现在的位置: 主页 > 企业简介 > 文章列表

python获得线程调用函数的返回值

作者:北京夜明珠节能科技有限公司 来源:www.ymzjn.com 发布时间:2017-09-06 13:10:27
python获得线程调用函数的返回值


threading.Thread 并没有显式的提供获取线程调用函数返回值的方法,需求自己实现。

使用数据库是一个办法: 可以让子线程将数据写到数据库中,消费线程再去数据库中读取数据;



如果不想用数据库,站群软件,可以使用类的全局变量来做传递,

示例代码如下:

import os

import threading



class SubThread():

data = {}

def __init__(self):

...



def execute_func(self, key):

# 执行各种操作

...

ret = ‘要返回的数据’

SubThread.data[key] = ret

...

return



class MainThread():

...

def call_func(self, key):

obj = SubThread()

thread = threading.Thread(target = obj.execute_func, args=(key,))

thread.start()

thread.join()



resp = SubThread.data[key]

del SubThread.data[key] # 一定要记得删掉



return resp

企业建站2800元起,携手武汉肥猫科技,做一个有见地的颜值派!更多优惠请戳:武汉网站优化 https://www.feimao666.com

上一篇:三线城市地方人才网该怎么推广? 下一篇:最后一页