python - 线程化 Python3
问题描述
我正在尝试在 Python 中使用线程,并且努力同时启动两个函数,然后等待两者完成并将返回的数据加载到主代码中的变量中。如何做到这一点?
import threading
from threading import Thread
func1():
#<do something>
return(x,y,z)
func2():
#<do something>
return(a,b,c)
Thread(target=func1).start()
Thread(target=func2).start()
#<hold until both threads are done, load returned values>
解决方案
提出的问题肯定需要更加明确。也许你在追求类似下面的东西?
import threading
from threading import Thread
def func1():
print("inside func1")
return 5
def func2():
print("inside func2")
return 6
if __name__ == "__main__":
t1 = Thread(target=func1)
t2 = Thread(target=func2)
threads = [t1, t2]
for t in threads:
t.start()
我相信您错过了实际启动线程的 start() 方法?
推荐阅读
- react-native - onPress 功能不起作用
- sql-server - 如何从本地实例查询/插入 - Azure SQL Server
- java - Spring Boot login error
- csv - NullPointerException while load csv using neo4j's apoc.periodic.iterate procedure
- vb.net - 保存 Word 文档导致“命令失败”
- c# - Using JsonConvert.DeserializeObject on JSON with dynamic object name
- sql-server - SQL - 在需要字符串的地方使用参数
- r - In R, select values from another dataframe based on rows and columns, which are saved in dataframe
- c++ - 关于 Boost 和架构的编译错误
- docker - 与 docker 级联的 traefik