日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
創(chuàng)新互聯(lián)Python教程:如何使用Python獲取多線程返回值?

金鳳網(wǎng)站制作公司哪家好,找成都創(chuàng)新互聯(lián)公司!從網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、成都響應(yīng)式網(wǎng)站建設(shè)公司等網(wǎng)站項目制作,到程序開發(fā),運營維護。成都創(chuàng)新互聯(lián)公司自2013年創(chuàng)立以來到現(xiàn)在10年的時間,我們擁有了豐富的建站經(jīng)驗和運維經(jīng)驗,來保證我們的工作的順利進行。專注于網(wǎng)站建設(shè)就選成都創(chuàng)新互聯(lián)公司。

這段時間,小編在工作上使用最多的就是多線程,而在這個過程中,難免會需要獲取多線程操作完的返回值進行其他操作。經(jīng)過一番查閱和操作,小編發(fā)現(xiàn)可以通過在threading、Thread的基礎(chǔ)上進行封裝來獲取返回值,小編總結(jié)了這兩種方法,快來看看吧。

第一種:在threading中使用全球變量

在threading中,并沒有實現(xiàn)返回值的方法,所以我們可以利用全局變量來實現(xiàn)返回值的獲取。

from threading import Thread

_sum = 0


def cal_sum(begin, end):
    # 聲明使用全局變量
    global _sum
    for i in range(begin, end + 1):
        _sum += i


if __name__ == '__main__':
    t1 = Thread(target=cal_sum, args=(1, 5))
    t2 = Thread(target=cal_sum, args=(6, 10))
    t1.start()
    t2.start()

    print(_sum)

第二種:重寫Thread類,自定義一個get_result()

from threading import Thread


# _sum = 0


def cal_sum(begin, end):
    # global _sum
    _sum = 0
    for i in range(begin, end + 1):
        _sum += i
    return  _sum

"""重新定義帶返回值的線程類"""


class MyThread(Thread):
    def __init__(self, func, args):
        super(MyThread, self).__init__()
        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


if __name__ == '__main__':
    t1 = MyThread(cal_sum, args=(1, 5))
    t2 = MyThread(cal_sum, args=(6, 10))
    t1.start()
    t2.start()
    t1.join()
    t2.join()
    res1 = t1.get_result()
    res2 = t2.get_result()

    print(res1 + res2)

以上就是小編總結(jié)的獲取多線程返回值的方法,大家可以兩種方法都嘗試下,然后選擇自己合適方便的方法去操作哦~


文章題目:創(chuàng)新互聯(lián)Python教程:如何使用Python獲取多線程返回值?
路徑分享:http://m.5511xx.com/article/dhdgioj.html