◐ Shell
clean mode source ↗

Message 93996 - Python tracker

If you mean, in main() instead of doing:

while True:
    q.put(["data1", "data2"])
    t = Process(target=popJobs, args=(q, ))
    t.start()
    t.join()

and doing:

while True:
    q.put(["data1", "data2"])
    popJobs(q)

instead. Then, the bug does indeed occur the same way. It did take more
iterations before it occured however. 

If however, you meant:

while True:
   fail=failureObject()
   for x in ["data1", "data2"]:
       checkAlive(fail, x)
   print(fail.status())

Then the bug never occurs.