import socket import threading import time s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) s.settimeout(5) s.connect(('127.0.0.1', 7)) # echo server def reader(): while True: try: data = s.recv(1024) except socket.timeout: print "read timeout" continue print data.strip() def writer(): while True: s.sendall("hello\n") time.sleep(0.01) rt = threading.Thread(target=reader) rt.start() wt = threading.Thread(target=writer) wt.start()