python开发之thread线程基础实例入门

时间:2021-05-22

本文实例讲述了python开发之thread线程基础。分享给大家供大家参考,具体如下:

说到线程,我们要知道啥是串行,啥是并行程序

举个例子:

串行程序,就是一个一个的执行程序

#python threadingimport 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!>>>

并行程序,就是很多个程序在同一时间(宏观)一起执行

#python threadingimport threadingimport time''' 并行执行,输出: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()

当然我们通过执行程序,可以知道,并行程序要比串行程序执行的要快....

我们也可以获取到当前的线程及个数:

#python threadingimport threadingimport time''' 并行执行,输出: [<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)>] 存在的线程数 : 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('存在的线程数 : %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)>]存在的线程数 : 7>>> Good!Good!Good!Good!Good!

希望本文所述对大家Python程序设计有所帮助。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章