I'm a newbie trying to write a script that uses threads. I'm right
now a little bit stuck in understanding why the code snippet I wrote
doesn't seem to be entering the function defined in the
start_new_thread() call.
If I run it as is (the threaded version), the output is:
UA_1 configuring...
UA_1 halting..
But if I comment out the line w/ the thread and just call the function
directly, everything seems to work OK:
UA_1 configuring...
UA_1 executing...
UA_1 halting...
Can anyone tell me why the thread doesn't seem to invoke the function
"execute()"? I'm running Python 2.4.3.
Here is my code:
===========
import thread
class Test(object):
def __init__(self, instanceID):
self.instanceID = instanceID
def configure(self):
print self.instanceID + " configuring..."
def execute(self):
print self.instanceID + " executing..."
def halt(self):
print self.instanceID + " halting..."
if __name__ == "__main__":
"""usage: sipp_auto [options]"""
ua1 = Test("UA_1")
ua1.configure()
#ua1.execute()
thread.start_new_thread(ua1.execute, ())
ua1.halt()
===========
Thanks, James