1 Usage
1.0 直接使用
import threading
def data_return():
print("data from return")
return "return test"
def data_test():
print("data from test")
return "test data"
t1 = threading.Thread(target=data_return)
t2 = threading.Thread(target=data_test)
t1.start()
t2.start()
- 结果
data from return
data from test
2 重写类:获取返回值
import threading
import time
class MyThread(threading.Thread):
def __init__(self, func, args=()):
threading.Thread.__init__(self)
self.func = func
self.args = args
def run(self):
self.result = self.func(*self.args)
def get_result(self):
try:
return self.result
except Exception:
return None
def data_return(name, sex):
return name, sex
xiaohong = "haha"
t1 = MyThread(data_return, args=(xiaohong, "male",))
t1.start()
name, sex = t1.get_result()
print("threading return result: name:{}\n sex: {}".format(name, sex))
- 结果
threading return result: name:haha
sex: male
【参考文献】
[1]https://www.cnblogs.com/aland-1415/p/7197021.html
[2]https://blog.csdn.net/zzzzjh/article/details/80614897
[3]https://blog.csdn.net/Xin_101/article/details/86593151