Python 子线程获取变量值:使用 join() 方法
可以使用 Python 的线程模块中的 Thread 类中的 'join()' 方法来获取子线程的变量值。
具体步骤如下:
- 在主线程中创建子线程,并传递需要处理的数据作为参数。
- 在子线程中对数据进行处理,并将结果存储在变量中。
- 在子线程结束后,将变量作为参数传递给主线程。
- 在主线程中调用 'join()' 方法等待子线程结束,并获取子线程的返回值。
以下是示例代码:
import threading
# 子线程处理数据
def process_data(data):
result = data * 2
return result
# 创建子线程
class MyThread(threading.Thread):
def __init__(self, data):
threading.Thread.__init__(self)
self.data = data
self.result = None
def run(self):
self.result = process_data(self.data)
# 主线程
if __name__ == '__main__':
data = 10
thread = MyThread(data)
thread.start() # 启动子线程
thread.join() # 等待子线程结束
result = thread.result
print(result) # 输出子线程处理后的结果
在上面的代码中,子线程 MyThread 会对传递的数据进行处理,并将结果存储在变量 result 中。在主线程中调用 'join()' 方法等待子线程结束,并获取子线程的返回值 result。最后,将结果打印出来。
原文地址: https://www.cveoy.top/t/topic/nwmn 著作权归作者所有。请勿转载和采集!