python開發(fā)之thread線程基礎實例入門
本文實例講述了python開發(fā)之thread線程基礎。分享給大家供大家參考,具體如下:
說到線程,我們要知道啥是串行,啥是并行程序
舉個例子:
串行程序,就是一個一個的執(zhí)行程序
#python threading
import time
'''
每一秒中,輸出:this is a demo!
'''
def serial():
'''串行輸出'''
time.sleep(1)
print('this is a demo!')
def main():
for i in range(5):
serial()
if __name__ == '__main__':
main()
運行結果如下:
>>> this is a demo! this is a demo! this is a demo! this is a demo! this is a demo! >>>
并行程序,就是很多個程序在同一時間(宏觀)一起執(zhí)行
#python threading
import threading
import time
'''
并行執(zhí)行,輸出:Good!Good!Good!Good!Good!
'''
def parallel():
'''并行輸出'''
time.sleep(1)
print('Good!')
def main():
for i in range(5):
t = threading.Thread(target=parallel)
t.start()
if __name__ == '__main__':
main()
當然我們通過執(zhí)行程序,可以知道,并行程序要比串行程序執(zhí)行的要快....
我們也可以獲取到當前的線程及個數(shù):
#python threading
import threading
import time
'''
并行執(zhí)行,輸出:
[<Thread(Thread-2, started 3480)>, <Thread(Thread-1, started 660)>,
<Thread(SockThread, started daemon 2920)>, <Thread(Thread-3, started 916)>,
<Thread(Thread-4, started 3476)>, <_MainThread(MainThread, started 3964)>,
<Thread(Thread-5, started 2060)>]
存在的線程數(shù) : 7
Good!Good!Good!Good!Good!
'''
def parallel():
'''并行輸出'''
time.sleep(1)
print('Good!')
def main():
for i in range(5):
t = threading.Thread(target=parallel)
t.start()
if __name__ == '__main__':
main()
print(threading.enumerate())
print('存在的線程數(shù) : %d'%threading.active_count())
運行結果如下:
>>> [<Thread(SockThread, started daemon 15424)>, <Thread(Thread-3, started 15840)>, <Thread(Thread-1, started 10884)>, <Thread(Thread-2, started 14512)>, <Thread(Thread-4, started 13204)>, <_MainThread(MainThread, started 12924)>, <Thread(Thread-5, started 15476)>] 存在的線程數(shù) : 7 >>> Good!Good!Good!Good!Good!
希望本文所述對大家Python程序設計有所幫助。
相關文章
利用Chatgpt開發(fā)一款加減乘除計算器(Python代碼實現(xiàn))
這篇文章主要為大家詳細介紹了如何利用Chatgpt開發(fā)一款加減乘除計算器(用Python代碼實現(xiàn)),文中的示例代碼講解詳細,感興趣的小伙伴可以了解一下2023-02-02
Python Flask 和 Django 的區(qū)別與適用場景示例分析
Flask和Django是兩個流行的Python Web框架,但設計哲學、功能和用法有很大區(qū)別,Flask是一個輕量級框架,簡單靈活,適合小型項目和快速原型開發(fā),本文給大家介紹Python Flask 和 Django 的區(qū)別與適用場景示例分析,感興趣的朋友跟隨小編一起看看吧2024-10-10
Python中的并發(fā)處理之asyncio包使用的詳解
本篇文章主要介紹了Python中的并發(fā)處理之asyncio包使用的詳解,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-04-04
pytorch tensor int型除法出現(xiàn)的問題
這篇文章主要介紹了pytorch tensor int型除法出現(xiàn)的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-04-04
django 多對多表的創(chuàng)建和插入代碼實現(xiàn)
這篇文章主要介紹了django-多對多表的創(chuàng)建和插入代碼實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2019-09-09

