python进程与线程的分析

  介绍

这篇文章将为大家详细讲解有python关进程与线程的分析,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

传统方式是调用2个方法执行1个任务,方法按顺序依次执行

#, - *安康;编码:utf-8  - * -   import 线程   import 时间   def 运行(n):   打印才能(& # 39;任务# 39;,n)   time . sleep(3)才能   if  __name__ ==, & # 39; __main__ # 39;:   运行才能(& # 39;t1 # 39;)   运行才能(& # 39;t2 # 39;)

<强>多线程例子

2个线程同时并发执行1个任务

#, - *安康;编码:utf-8  - * -   import 线程   import 时间   def 运行(n):   打印才能(& # 39;任务# 39;,n)   time . sleep(3)才能      if  __name__ ==, & # 39; __main__ # 39;:   t1=才能threading.Thread(目标=运行,args=(& # 39; t1 # 39;,))   t2才能=threading.Thread(目标=运行,参数=(& # 39;t2 # 39;,))   t1.start才能()   t2.start才能()

自己写一个类继承继承线程。线程

#, - *安康;编码:utf-8  - * -   import 线程   import 时间   class  MyThread (threading.Thread):   def 才能__init__(自我,n):   ,,,超级(MyThread,自我). __init__ ()   ,,,self.n=n   #这才能里面默认就有一个运行方法   def 才能运行(自我):   ,,,print (& # 39; runing 任务# 39;,self.n)   if  __name__ ==, & # 39; __main__ # 39;:   #才能在主方法通过对象调用线程   t1=才能MyThread (& # 39; t1 # 39;)   t2才能=MyThread (& # 39; t2 # 39;)   t1.run才能()   t2.run才能()

使用的循环启动多个线程

#, - *安康;编码:utf-8  - * -   import 线程   import 时间   def 运行(n):   打印才能(& # 39;任务# 39;,n)   time . sleep(3)才能   if  __name__ ==, & # 39; __main__ # 39;:   for 才能小姐:拷贝范围(10):   ,,,t=threading.Thread(目标=运行,args=(& # 39; t - % & # 39; %我,))   ,,,t.start ()

等多线程同时执行完后,再执行其它代码,因为线程是与其它代码一起运行的

#, - *安康;编码:utf-8  - * -   import 线程   import 时间   def 运行(n):   打印才能(& # 39;任务# 39;,n)   time . sleep(3)才能   if  __name__ ==, & # 39; __main__ # 39;:   time_start才能=time.time ()   #才能定义一个空列表装线程t实例   t_objects才能=[]   for 才能小姐:拷贝范围(10):   ,,,t=threading.Thread(目标=运行,args=(& # 39; t - % & # 39; %我,))   ,,,t.start ()   ,,,t_objects.append (t)   #,才能等所有线程执行完后,再执行下面的代码   #才能,因为线程与下面的代码是同时运行的   #才能,要想先等线程执行完毕再执行其它代码   #,才能使用加入()方法进行阻塞   #才能在这里统一结束所有t线程   for 才能小姐:拷贝t_objects:   ,,,t.join ()   time_end才能=time.time ()   太阳才能=time_end-time_start   打印才能(太阳)

关于python进程与线程的分析就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看的到。

python进程与线程的分析