http://stackoverflow.com/questions/15311450/my-chat-client-freezes-up-after-beginning-threads

Owatch charles.xrandolph2 at gmail.com
Sat Mar 9 22:23:17 CET 2013


On Mar 9, 6:35 pm, Andrew Berg <bahamutzero8... at gmail.com> wrote:
> On 2013.03.09 09:26, Owatch wrote:> Thing is, when I run the program. Nothing happens.
>
> > Can somebody help point out what is wrong? (I've asked questions and researched for 3 days, without getting anywhere, so I did try)
>
> You defined a thread, but never created or started it. Also, why did you
> subclass threading.Thread? You also mentioned queues, but you didn't use
> them.
>
> Not tested, but shows the basics:
>
> import threading
> import queue
> import socket
>
> def process():
>   while alive:
>     thing = things_to_process.get()
>     # do stuff with the thing here
>     things_to_process.task_done()
>
> alive = True
> host = 'localhost'
> port = 9999
> things_to_process = queue.Queue()
> process_thread = threading.Thread(target=process)
> process_thread.start()
> sock = socket.socket()
> sock.connect((host, port))
> while alive:
>   try:
>     data = sock.recv()
>   except Exception: # should probably do different things for different
> errors in real code
>     alive = False
>     sock.close()
>     process_thread.join()
>     raise
>   else:
>     things_to_process.put(data)
>
> --
> CPython 3.3.0 | Windows NT 6.2.9200 / FreeBSD 9.1

Thanks.



More information about the Python-list mailing list