32.python 線程定時器Timer

相對前面幾篇python線程內容而言,本片內容相對比較簡單,定時器 – 顧名思義,必然用於定時任務。python

壓壓驚

一.線程定時器Timer原理

原理比較簡單,指定時間間隔後啓動線程!適用場景:完成定時任務,例如:定時提醒-鬧鐘等等.git

1github

2微信

3ide

4函數

# 導入線程模塊spa

import threading線程

 

timer = threading.Timer(interval, function, args=None, kwargs=None)code

參數介紹:orm

interval — 定時器間隔,間隔多少秒以後啓動定時器任務(單位:秒);

function — 線程函數;

args — 線程參數,能夠傳遞元組類型數據,默認爲空(缺省參數);

kwargs — 線程參數,能夠傳遞字典類型數據,默認爲空(缺省參數);

 

 

二.線程定時器使用

使用場景:定時鬧鐘

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

# !usr/bin/env python

# -*- coding:utf-8 _*-

"""

@Author:何以解憂

@Blog(我的博客地址): shuopython.com

@WeChat Official Account(微信公衆號):猿說python

@Github:www.github.com

 

@File:python_timer.py

@Time:2019/10/22 21:25

 

@Motto:不積跬步無以致千里,不積小流無以成江海,程序人生的精彩須要堅持不懈地積累!

"""

 

# 導入線程模塊

import threading

 

def thread_Timer():

    print("該起牀啦...5秒以後再次呼叫你起牀...")

 

    # 聲明全局變量

    global t1

    # 建立並初始化線程

    t1 = threading.Timer(5,thread_Timer)

    # 啓動線程

    t1.start()

 

 

if __name__ == "__main__":

    # 建立並初始化線程

    t1 = threading.Timer(5, thread_Timer)

    # 啓動線程

    t1.start()

輸出結果:

1

2

3

4

5

6

7

8

9

該起牀啦...5秒以後再次呼叫你起牀...

該起牀啦...5秒以後再次呼叫你起牀...

該起牀啦...5秒以後再次呼叫你起牀...

該起牀啦...5秒以後再次呼叫你起牀...

該起牀啦...5秒以後再次呼叫你起牀...

該起牀啦...5秒以後再次呼叫你起牀...

該起牀啦...5秒以後再次呼叫你起牀...

該起牀啦...5秒以後再次呼叫你起牀...

該起牀啦...5秒以後再次呼叫你起牀...

代碼分析:

在主線程建立了線程定時器,在5秒以後執行thread_Timer線程函數,而在thread_Timer函數結束的時候,又設置了定時器線程thread_Timer,這就完成了一個遞歸的操做,間隔5秒重複定時任務!

 

三.重點總結

線程與線程的交互方式有不少,到目前爲止已經講解了線程互斥鎖Lock線程事件Event線程條件變量Condition,線程定時器Timer,需求不一樣,使用方式也能夠不一樣,靈活運用!

猜你喜歡:

1.python線程事件Event

2.python線程條件變量Condition

3.python線程互斥鎖Lock

4.python線程建立和參數傳遞

 

轉載請註明猿說Python » python線程定時器Timer

相關文章
相關標籤/搜索