Dear FB,

> As you have been already told, join() blocks until the
> thread is
> terminated. and you should avoid that.
> A simple fix could by add a timeout to t.join, doing
> something like :
>         t.join(JOIN_TIMEOUT);
>         if not t.isAlive():
>             print t.result
> 

Thanks for your great sample. And, thank you for your tips on speedup the ping 
stuff. 

However, i still have problem when adding timeout to join(). 
- It works, but only print out thread result that is not alive, as we put in 
the code. So, i never get result from unsuccessful ping action, which might 
take more time than timeout specified. 
- I still have little delay in GUI. Is it possible to make it smooth in GUI 
operation? When i put more timeout (say: 0.5 from 0.2), i will have to wait  
longer.

PS: thanks for pointing out inefficient ping action :) I will follow the tips. 
But, another time I might need to do something else, like downloading files, or 
checking for serial devices. So, this thread thing, imho, is very important. 

Any help would be very appreciated.
M.


      

--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to