python开发_thread_线程基础
说到线程,我们要知道啥是串行,啥是并行程序
举个例子:
串行程序,就是一个一个的执行程序
1 #python threading 2 3 import time 4 ''' 5 每一秒中,输出:this is a demo! 6 ''' 7 8 def serial(): 9 '''串行输出''' 10 time.sleep(1) 11 print('this is a demo!') 12 13 def main(): 14 for i in range(5): 15 serial() 16 17 if __name__ == '__main__': 18 main()
并行程序,就是很多个程序在同一时间(宏观)一起执行
1 #python threading 2 3 import threading 4 import time 5 ''' 6 并行执行,输出:Good!Good!Good!Good!Good! 7 ''' 8 9 def parallel(): 10 '''并行输出''' 11 time.sleep(1) 12 print('Good!') 13 14 def main(): 15 for i in range(5): 16 t = threading.Thread(target=parallel) 17 t.start() 18 19 if __name__ == '__main__': 20 main()
当然我们通过执行程序,可以知道,并行程序要比串行程序执行的要快....
我们也可以获取到当前的线程及个数:
1 #python threading 2 3 import threading 4 import time 5 ''' 6 并行执行,输出: 7 [<Thread(Thread-2, started 3480)>, <Thread(Thread-1, started 660)>, 8 <Thread(SockThread, started daemon 2920)>, <Thread(Thread-3, started 916)>, 9 <Thread(Thread-4, started 3476)>, <_MainThread(MainThread, started 3964)>, 10 <Thread(Thread-5, started 2060)>] 11 存在的线程数 : 7 12 Good!Good!Good!Good!Good! 13 ''' 14 15 def parallel(): 16 '''并行输出''' 17 time.sleep(1) 18 print('Good!') 19 20 def main(): 21 for i in range(5): 22 t = threading.Thread(target=parallel) 23 t.start() 24 25 if __name__ == '__main__': 26 main() 27 print(threading.enumerate()) 28 print('存在的线程数 : %d'%threading.active_count())
========================================================
More reading,and english is important.
I'm Hongten
大哥哥大姐姐,觉得有用打赏点哦!多多少少没关系,一分也是对我的支持和鼓励。谢谢。
Hongten博客排名在100名以内。粉丝过千。
Hongten出品,必是精品。
E | hongtenzone@foxmail.com B | http://www.cnblogs.com/hongten
========================================================