我正在尝试在主线程旁边运行多个线程。 threading.Thread
和concurrent.futures.ThreadPoolExecutor
都可以单独运行一个线程。
但是,运行两个单独的线程根本不起作用。其中一个线程会一直运行,同时锁定其他两个线程。没有“共享”资源被锁定afaik,它们彼此之间没有任何关系(除了调用下一个线程),所以我不明白为什么这不起作用
我的代码如下:
with concurrent.futures.ThreadPoolExecutor() as executor:
future = executor.submit(function())
result = future.result()
线程内部运行的函数也调用:
function():
with concurrent.futures.ThreadPoolExecutor() as executor:
inner_result = (executor.submit(inner_function,"value")).result()
我也尝试使用以下命令运行此功能:
t = Thread(target=function...
,得到相同的结果。
在python中运行多个并发线程时我缺少什么吗?