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

詳解Python定時器Timer的使用及示例

 更新時間:2023年05月09日 11:06:12   作者:說酒話的貓  
這篇文章主要介紹了詳解Python定時器的使用及示例,Timer定時器源碼實現(xiàn),和自定義一個線程方式一樣,都是繼承Thread類,重寫了run()方法,只是實現(xiàn)的功能是延時執(zhí)行一個函數(shù)或方法,需要的朋友可以參考下

1.定時器

Timer定時器源碼實現(xiàn),和自定義一個線程方式一樣,都是繼承Thread類,重寫了run()方法,只是實現(xiàn)的功能是延時執(zhí)行一個函數(shù)或方法。

(1)線程定時器(Timer)解釋:

  • Timer類是Thread的子類,只加入了時間延遲功能。
  • Thread和Timer對象都用start()方法啟動。
  • 啟動Timer后,等于單獨啟動一個線程,為非阻塞的。

(2)Timer 的兩種用法:

  • 正常用法:啟動后,延時執(zhí)行函數(shù)或方法。
  • 特殊用法:每隔n秒,執(zhí)行一次函數(shù)或方法,就是不斷地啟動定時器。

2.隊列

  • queue.Queue( ):先入先出。
  • queue.LifoQueue( ):后入先出。
  • queue.PriorityQueue() :可設(shè)置優(yōu)先級。
  • Queue.put():往隊列放數(shù)據(jù)。
  • Qveue .get():從隊列取數(shù)據(jù)。
  • Quewe.task.done():配合get使用,告訴隊列本次完成。
  • Queue.qsize():獲取數(shù)據(jù)的數(shù)量。
  • Queue.full()/empty():判滿/空。
  • Queue.join():等待線程完成。

3.線程池:

線程池在系統(tǒng)啟動時即創(chuàng)建大量空閑的線程,程序只要將一個函數(shù)提交給線程池,線程池就會啟動一個空閑的線程來執(zhí)行它。當(dāng)該函數(shù)執(zhí)行結(jié)束后,該線程并不會死亡,而是再次返回到線程池中變成空閑狀態(tài),等待執(zhí)行下一個函數(shù)。

使用線程池可以有效地控制系統(tǒng)中并發(fā)線程的數(shù)量。當(dāng)系統(tǒng)中包含有大量的并發(fā)線程時,會導(dǎo)致系統(tǒng)性能急劇下降,甚至導(dǎo)致Python解釋器崩潰,而線程池的最大線程數(shù)參數(shù)可以控制系統(tǒng)中并發(fā)線程的數(shù)量不超過此數(shù),從而節(jié)省線程創(chuàng)建和銷毀的開銷,能帶來更好的性能和系統(tǒng)穩(wěn)定性。

4.案例

使用定時器實現(xiàn)當(dāng)前時間每秒循環(huán)輸出一次。

Timer:

import threading
import time
# run函數(shù)
def run():
    print(time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()))  # 輸出當(dāng)?shù)貢r間
    timer = threading.Timer(1, run)  # 設(shè)置一個定時器,循環(huán)輸出時間
    timer.start()  # 啟動線程
run()

運行結(jié)果:

2022-01-22 20:22:15
2022-01-22 20:22:16
2022-01-22 20:22:17
2022-01-22 20:22:18
2022-01-22 20:22:19
2022-01-22 20:22:20
2022-01-22 20:22:21
2022-01-22 20:22:22
2022-01-22 20:22:23
2022-01-22 20:22:24
2022-01-22 20:22:25
······

到此這篇關(guān)于詳解Python定時器Timer的使用及示例的文章就介紹到這了,更多相關(guān)Python定時器Timer內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 利用Python實現(xiàn)在PDF文檔中插入文字水印

    利用Python實現(xiàn)在PDF文檔中插入文字水印

    在傳播PDF文檔的過程中,如何有效地保護(hù)文檔的版權(quán)和所有權(quán),防止非法復(fù)制和濫用,成為了一個不可忽視的問題,所以給PDF文檔添加水印便成了一種行之有效的保護(hù)手,本文將展示如何使用Python在PDF文檔中插入文字水印,實現(xiàn)高效的PDF文檔處理,需要的朋友可以參考下
    2024-04-04
  • Python在for循環(huán)中更改list值的方法【推薦】

    Python在for循環(huán)中更改list值的方法【推薦】

    這篇文章主要介紹了Python在for循環(huán)中更改list值的方法,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下
    2018-08-08
  • pyqt5 實現(xiàn)在別的窗口彈出進(jìn)度條

    pyqt5 實現(xiàn)在別的窗口彈出進(jìn)度條

    今天小編就為大家分享一篇pyqt5 實現(xiàn)在別的窗口彈出進(jìn)度條,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-06-06
  • 使用Python將Exception異常錯誤堆棧信息寫入日志文件

    使用Python將Exception異常錯誤堆棧信息寫入日志文件

    這篇文章主要介紹了使用Python將Exception異常錯誤堆棧信息寫入日志文件,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-04-04
  • python實現(xiàn)UDP協(xié)議下的文件傳輸

    python實現(xiàn)UDP協(xié)議下的文件傳輸

    這篇文章主要為大家詳細(xì)介紹了python實現(xiàn)UDP協(xié)議下的文件傳輸,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-03-03
  • python3列表刪除大量重復(fù)元素remove()方法的問題詳解

    python3列表刪除大量重復(fù)元素remove()方法的問題詳解

    這篇文章主要給大家介紹了關(guān)于python3列表刪除大量重復(fù)元素remove()方法的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • 通過實例了解python__slots__使用方法

    通過實例了解python__slots__使用方法

    這篇文章主要介紹了通過實例了解python__slots__使用方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-09-09
  • python使用wmi模塊獲取windows下硬盤信息的方法

    python使用wmi模塊獲取windows下硬盤信息的方法

    這篇文章主要介紹了python使用wmi模塊獲取windows下硬盤信息的方法,涉及Python獲取系統(tǒng)硬件信息的相關(guān)技巧,需要的朋友可以參考下
    2015-05-05
  • 使用Python實現(xiàn)博客上進(jìn)行自動翻頁

    使用Python實現(xiàn)博客上進(jìn)行自動翻頁

    這篇文章主要介紹了使用Python實現(xiàn)博客上進(jìn)行自動翻頁,需要的朋友可以參考下
    2017-08-08
  • python transpose()處理高維度數(shù)組的軸變換的實現(xiàn)

    python transpose()處理高維度數(shù)組的軸變換的實現(xiàn)

    本文主要介紹了python transpose()處理高維度數(shù)組的軸變換的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-09-09

最新評論