您的位置:首页 > 编程语言 > Python开发

python开发_thread_线程基础

2013-10-04 22:09 337 查看
说到线程,我们要知道啥是串行,啥是并行程序

举个例子:

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

#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()


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

#python threading

import threading
import 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 threading

import threading
import 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())
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: