欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python QT界面關(guān)閉線程池的線程跟隨退出完美解決方案

 更新時間:2022年11月28日 17:13:35   作者:柳道  
這篇文章主要介紹了python QT界面關(guān)閉,線程池的線程跟隨退出解決思路方法,本文給大家分享兩種方法結(jié)合實例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下

方法一、線程池執(zhí)行的循環(huán)代碼為自己寫的情況

定義一個全局變量,默認(rèn)為T,當(dāng)QT界面關(guān)閉后,將該變量值改為F。

線程執(zhí)行的循環(huán)代碼內(nèi)增加一個判斷方法,每次循環(huán)之前對全局變量進行判斷,如果結(jié)果為T則進行循環(huán)、如果為F,則break退出循環(huán),結(jié)束線程

from concurrent.futures import ThreadPoolExecutor 
import time
a = True  # 設(shè)置全局變量
def fun():  # 線程池執(zhí)行的函數(shù)
    while a:  #  線程池中的循環(huán)代碼,每次循環(huán)都檢查一遍變量a的值
        time.sleep(0.1)  # 線程需要執(zhí)行的具體代碼
        print('1')

tp = ThreadPoolExecutor(5)  # 創(chuàng)建線程池
for i in range(10):
    tp.submit(fun)  # 向線程池提交任務(wù)

time.sleep(1)  
a = False  # 需要結(jié)束線程池任務(wù)時,執(zhí)行該代碼
tp.shutdown()  # 關(guān)閉線程池

方法二、線程池中執(zhí)行的循環(huán)為調(diào)用的模塊內(nèi)的方法

比如 paramiko 庫中,sftp下載文件的方法。

這種情況可以利用回調(diào)函數(shù)進行判斷。

回調(diào)函數(shù)檢查控制變量,如果檢測到需要停止執(zhí)行時,執(zhí)行sys.exit()結(jié)束退出線程

from concurrent.futures import ThreadPoolExecutor
import sys
import time

a = True
def call(): # 定義退出的函數(shù)
    if not a:
        print('線程結(jié)束退出')
        sys.exit()  # 退出

def fun(callback=None):  # 模擬sftp.get方法,循環(huán)執(zhí)行,并且有回調(diào)函數(shù)
    while True:
        time.sleep(0.1)
        print('1')
        if callback != None:
            callback()  # 每次循環(huán)調(diào)用回調(diào)函數(shù),進行判斷是否需要結(jié)束線程

tp = ThreadPoolExecutor(5)
for i in range(10):
    tp.submit(fun, call)

time.sleep(1)
a = False
tp.shutdown()

到此這篇關(guān)于python QT界面關(guān)閉,線程池的線程跟隨退出解決思路方法的文章就介紹到這了,更多相關(guān)python QT界面關(guān)閉內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python3操作MongoDB增冊改查等方法詳解

    Python3操作MongoDB增冊改查等方法詳解

    這篇文章主要介紹了Python操作MongoDB增冊改查等方法詳解,需要的朋友可以參考下
    2020-02-02
  • django搭建項目配置環(huán)境和創(chuàng)建表過程詳解

    django搭建項目配置環(huán)境和創(chuàng)建表過程詳解

    這篇文章主要介紹了django搭建項目配置環(huán)境和創(chuàng)建表過程詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-07-07
  • python批量修改文件編碼格式的方法

    python批量修改文件編碼格式的方法

    這篇文章主要為大家詳細(xì)介紹了python批量修改文件編碼格式的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-05-05
  • python文件操作之目錄遍歷實例分析

    python文件操作之目錄遍歷實例分析

    這篇文章主要介紹了python文件操作之目錄遍歷的方法,以實例形式較為詳細(xì)的分析了目錄遍歷所需要用到的相關(guān)函數(shù)與使用技巧,需要的朋友可以參考下
    2015-05-05
  • Python中標(biāo)準(zhǔn)庫OS的常用方法總結(jié)大全

    Python中標(biāo)準(zhǔn)庫OS的常用方法總結(jié)大全

    python中的OS庫提供了使用各種操作系統(tǒng)功能的接口。是經(jīng)常用到的一個庫,所以這篇文章主要給大家總結(jié)介紹了關(guān)于Python中標(biāo)準(zhǔn)庫OS的常用方法,文中給出了詳細(xì)的示例代碼供大家參考學(xué)習(xí),需要的朋友們下面來一起看看吧。
    2017-07-07
  • python中requests使用代理proxies方法介紹

    python中requests使用代理proxies方法介紹

    這篇文章主要介紹了python中requests使用代理proxies方法介紹,具有一定參考價值,需要的朋友可以了解下。
    2017-10-10
  • python+pytest接口自動化之token關(guān)聯(lián)登錄的實現(xiàn)

    python+pytest接口自動化之token關(guān)聯(lián)登錄的實現(xiàn)

    公司某管理后臺系統(tǒng),登錄后返回token,接著去請求其他接口時請求頭中都需要加上這個token,否則提示請先登錄,今天通過本文給大家介紹下python+pytest接口自動化之token關(guān)聯(lián)登錄的實現(xiàn),感興趣的朋友一起看看吧
    2022-04-04
  • Django中如何用xlwt生成表格的方法步驟

    Django中如何用xlwt生成表格的方法步驟

    這篇文章主要介紹了Django中如何用xlwt生成表格的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • 基于python分享極坐標(biāo)下的幾類典型曲線

    基于python分享極坐標(biāo)下的幾類典型曲線

    這篇文章主要介紹了基于python分享極坐標(biāo)下的幾類典型曲線,極坐標(biāo)系統(tǒng)是一套區(qū)別于笛卡爾直角坐標(biāo)系的二維坐標(biāo)系統(tǒng),下面我們在python的基礎(chǔ)上講解及坐標(biāo)及其下的幾種曲線,需要的小伙伴可以參考一下
    2022-03-03
  • 解決Python傳遞中文參數(shù)的問題

    解決Python傳遞中文參數(shù)的問題

    這篇文章主要介紹了解決Python傳遞中文參數(shù)的問題的相關(guān)資料,需要的朋友可以參考下
    2015-08-08

最新評論