stop a thread safetely
Zunbeltz Izaola
zunbeltz at gmail.com
Fri May 13 10:47:34 EDT 2005
On Fri, 13 May 2005 09:10:13 -0400, Peter Hansen wrote:
>
> How did you intend to stop the thread in a manner which might be unsafe?
> (Hint, unless you're doing something unusual, you can't.)
>
I have a threaded object (Mythread). It checks if want_thread
variable is True to return. The problem is that this object
execute a function that is a tcp comunication
def Client(self,Request,Answer):
totalsent = 0
while totalsent < 608:
sent = self.sock.send(Request.struct2string()[totalsent:])
if sent == 0:
raise RuntimeError, "socket broken"
totalsent = totalsent + sent
if Request.Codigo != 37:
self.WriteLog("Request",Request)
data = self.sock.recv(608)
Answer.string2struct(data)
if int(Answer.Param[9]) != 37:
self.WriteLog("Answer",Answer)
The Client function send a Request (them write it in a log file),
gets and answer and and write it. The problem is that when i stop
the thread a get somethime the Request writed but not the answer,
as if the funciton Client returns before it ends.
Zunbeltz
> -Peter
More information about the Python-list
mailing list