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

Python守護(hù)進(jìn)程實(shí)現(xiàn)過程詳解

 更新時間:2020年02月10日 14:11:21   作者:xushukui  
這篇文章主要介紹了Python守護(hù)進(jìn)程實(shí)現(xiàn)過程詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下

這篇文章主要介紹了Python守護(hù)進(jìn)程實(shí)現(xiàn)過程詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下

如果你設(shè)置一個線程為守護(hù)線程,就表示你在說這個線程是不重要的,在進(jìn)程退出的時候,不用等待這個線程退出。如果你的主線程在退出的時候,不用等待那些子線程完成,那就設(shè)置這些線程的daemon屬性。即在線程開始(thread.start())之前,調(diào)用setDeamon()函數(shù),設(shè)定線程的daemon標(biāo)志。(thread.setDaemon(True))就表示這個線程“不重要”。

如果你想等待子線程完成再退出,那就什么都不用做,或者顯示地調(diào)用thread.setDaemon(False),設(shè)置daemon的值為false。新的子線程會繼承父線程的daemon標(biāo)志。整個Python會在所有的非守護(hù)線程退出后才會結(jié)束,即進(jìn)程中沒有非守護(hù)線程存在的時候才結(jié)束。

看下面的例子:

import time
import threading


def fun():
  print "start fun"
  time.sleep(2)
  print "end fun"
print "main thread"
t1 = threading.Thread(target=fun,args=())
#t1.setDaemon(True)
t1.start()
time.sleep(1)
print "main thread end"

結(jié)果:

main thread
start fun
main thread end
end fun

結(jié)論:程序在等待子線程結(jié)束,才退出了。

設(shè)置:setDaemon 為True

import time
import threading
def fun():
  print "start fun"
  time.sleep(2)
  print "end fun"

print "main thread"
t1 = threading.Thread(target=fun,args=())

t1.setDaemon(True)

t1.start()
time.sleep(1)
print "main thread end"

結(jié)果:

main thread
start fun
main thread end

結(jié)論:程序在主線程結(jié)束后,直接退出了。 導(dǎo)致子線程沒有運(yùn)行完。

守護(hù)進(jìn)程可以通過調(diào)用isAlive(), 來監(jiān)視其他線程是否是存活的。

如果死掉的話就重新建立一個工作線程,啟動起來(這里要注意不能使用原來的線程讓它start(),因?yàn)檫@個線程已經(jīng)結(jié)束了,內(nèi)存中的實(shí)例已經(jīng)釋放掉了,所以使用這個方法會報錯)。

#coding=utf-8
import time
from threading import Thread
 
 
class ticker(Thread):
  def run(self):
    while True:
      print time.time()
      if (time.time() > 1470883000):
        break
        pass
      time.sleep(3)     
      pass
    pass
 
class moniter(Thread):
  def run(self):
    while True:
      global T
      if (T.isAlive()):
        print 't is alive'
      else :
        print 't is dead'
        T = ticker()
        T.start()
      print 'checking '
      time.sleep(5)
      pass
    pass
T = ticker()
T.start()
 
mo = moniter()
mo.start()

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python語法def語句及復(fù)雜用法實(shí)例探究

    Python語法def語句及復(fù)雜用法實(shí)例探究

    在 Python 中,def?是用于定義函數(shù)的關(guān)鍵字,本文將深入介紹def的用法和特點(diǎn),詳細(xì)說明如何定義函數(shù)、傳遞參數(shù)、返回值以及更復(fù)雜的用法
    2024-01-01
  • 分享一個pycharm專業(yè)版安裝的永久使用方法

    分享一個pycharm專業(yè)版安裝的永久使用方法

    這篇文章主要介紹了分享一個pycharm專業(yè)版安裝的永久使用方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09
  • PyCM多類別混淆矩陣分析python庫功能使用探究

    PyCM多類別混淆矩陣分析python庫功能使用探究

    這篇文章主要為大家介紹了python編寫的PyCM多類混淆矩陣庫,用于多類別混淆矩陣分析,幫助用戶從不同角度評價分類模型的表現(xiàn),這些指標(biāo)包括但不限于準(zhǔn)確率、召回率、F1分?jǐn)?shù)、Kappa?統(tǒng)計量等,支持二分類、多分類及多標(biāo)簽分類問題
    2024-01-01
  • Python 框架 FastAPI詳解

    Python 框架 FastAPI詳解

    FastAPI 是一個現(xiàn)代、快速且高性能的 Web 框架,用于 Python 3.6+,基于 Python 類型提示構(gòu)建 API,它通過 Starlette 和 Pydantic 優(yōu)化,支持多種 HTTP 方法、異步編程、數(shù)據(jù)驗(yàn)證和自動生成交互式文檔,FastAPI 適合快速開發(fā)高性能、可擴(kuò)展的 Web 服務(wù)
    2024-11-11
  • Python實(shí)現(xiàn)監(jiān)控遠(yuǎn)程主機(jī)實(shí)時數(shù)據(jù)的示例詳解

    Python實(shí)現(xiàn)監(jiān)控遠(yuǎn)程主機(jī)實(shí)時數(shù)據(jù)的示例詳解

    這篇文章主要為大家詳細(xì)介紹了Python如何使用Socket庫和相應(yīng)的第三方庫來監(jiān)控遠(yuǎn)程主機(jī)的實(shí)時數(shù)據(jù),比如CPU使用率、內(nèi)存使用率、網(wǎng)絡(luò)帶寬等,感興趣的可以了解一下
    2023-04-04
  • 將pip源更換到國內(nèi)鏡像的詳細(xì)步驟

    將pip源更換到國內(nèi)鏡像的詳細(xì)步驟

    這篇文章主要介紹了將pip源更換到國內(nèi)鏡像的詳細(xì)步驟,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-04-04
  • python實(shí)現(xiàn)清屏的方法

    python實(shí)現(xiàn)清屏的方法

    這篇文章主要介紹了python實(shí)現(xiàn)清屏的方法,涉及Python調(diào)用系統(tǒng)命令的相關(guān)技巧,非常具有實(shí)用價值,需要的朋友可以參考下
    2015-04-04
  • 用Python把csv文件批量修改編碼為UTF-8格式并轉(zhuǎn)為Excel格式的方法

    用Python把csv文件批量修改編碼為UTF-8格式并轉(zhuǎn)為Excel格式的方法

    有時候用excel打開一個csv文件,中文全部顯示亂碼,然后手動用notepad++打開,修改編碼為utf-8并保存后,再用excel打開顯示正常,本文將給大家介紹一下用Python把csv文件批量修改編碼為UTF-8格式并轉(zhuǎn)為Excel格式的方法,需要的朋友可以參考下
    2023-09-09
  • 關(guān)于pytorch中網(wǎng)絡(luò)loss傳播和參數(shù)更新的理解

    關(guān)于pytorch中網(wǎng)絡(luò)loss傳播和參數(shù)更新的理解

    今天小編就為大家分享一篇關(guān)于pytorch中網(wǎng)絡(luò)loss傳播和參數(shù)更新的理解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-08-08
  • Python腳本實(shí)現(xiàn)調(diào)用手機(jī)攝像頭

    Python腳本實(shí)現(xiàn)調(diào)用手機(jī)攝像頭

    這篇文章主要為大家詳細(xì)介紹了Python如何通過,腳本實(shí)現(xiàn)調(diào)用手機(jī)攝像頭,這樣就能隨時隨地用電腦偷偷看看男朋友都在干啥了,感興趣的小伙伴可以了解下
    2025-03-03

最新評論