zoukankan      html  css  js  c++  java
  • 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

    ========================================================

  • 相关阅读:
    阿里巴巴2018秋招面经之前端岗(1~5面)
    面试分享:2018阿里巴巴前端面试总结(题目+答案 30题)
    2018年各大互联网前端面试题三(阿里)
    阿里巴巴2016前端工程师面试题
    2016 阿里校招笔试前端题目,你还记得吗?
    2018阿里前端校招分享(笔试篇)
    2017 阿里校招前端笔试题小结
    阿里2018校招编程题
    ko.js学习一
    简单的3d变换
  • 原文地址:https://www.cnblogs.com/hongten/p/hongten_python_threading_basic.html
Copyright © 2011-2022 走看看