Implement ClientThread