如何确定是否已启动python线程?有一种方法is_alive()
,但在之前,而 时,这是正确的。
答案 0 :(得分:5)
您可以查看主题实例的 ident 字段。 Python 2.7 documentation for Threading将 ident 描述为
此线程的'线程标识符',如果线程没有,则为None 已经开始了。
答案 1 :(得分:2)
使用isAlive
(或is_alive
)Thread
类方法。
来自来源http://hg.python.org/cpython/file/2.7/Lib/threading.py#l995:
# ...
def isAlive(self):
"""Return whether the thread is alive.
This method returns True just before the run() method starts until just
after the run() method terminates. The module function enumerate()
returns a list of all alive threads.
"""
assert self.__initialized, "Thread.__init__() not called"
return self.__started.is_set() and not self.__stopped
# ...
答案 2 :(得分:0)
您可以让线程函数在启动时设置一个布尔标志,然后检查该标志。