检查函数是否在Python 2.7中运行
如果我有这两个功能:检查函数是否在Python 2.7中运行,python,python-2.7,function,Python,Python 2.7,Function,如果我有这两个功能: def func1(): print "I am function1" def func2(): print "Function 1 is still running." while(func1 is running): func2() 如何检查函数1是否仍在运行?我使用线程模块解决了这个问题。下面是我的代码 import threading from threading import Thread func1_thread = Thread
def func1():
print "I am function1"
def func2():
print "Function 1 is still running."
while(func1 is running):
func2()
如何检查函数1是否仍在运行?我使用线程模块解决了这个问题。下面是我的代码
import threading
from threading import Thread
func1_thread = Thread(target = func1)
while func1_thread.isAlive():
func2()
... 这些是异步的吗?如果它们是串行的,则按顺序运行…Python默认情况下是同步的,因此当
func1
实际运行时,它将阻塞主线程,并且在函数完成之前不会继续您的程序。如何同时运行这两个线程,但是,只要func1停止运行,就停止func2?请阅读文档中的线程化模块。它提供线程来并行运行,并提供同步原语来控制线程之间的执行顺序。Michael提到的线程模块可能就是答案。或者您可能需要生成器和协同程序。或者您可能需要两个完全独立的Python进程。你能进一步描述一下情况吗?