Python: How To Not Wait For A Thread To Finish To Carry On?
So I have some code that waits for X to happen, then creates a thread and does processEmail. What I am looking for is a way for the code to carry on waiting X even though processEm
Solution 1:
Problem is that you're actually calling your method when passing it as argument of Thread
.
So it executes, but in the current thread, that's why it's working but it's blocking (and since it probably returns None
, you get no error from the Thread
object, it just blocks)
Remove parentheses to pass the function object, not the result from the call!
thread = Thread(target = processEmail.main)
thread.start()
Note: some IDEs like PyCharm automatically add parentheses to function names. That's a bad idea in that case :)
Post a Comment for "Python: How To Not Wait For A Thread To Finish To Carry On?"