Threaing模块, 多线程的使用。

Threaing模块, 多线程的使用。

什么情况下会用到threaind模块?你不想等一个线程调用完然后才继续执行第二个线程的时候。

例:

 

如果你不使用多线程同时进行,那么正常情况下,你需要等待loop(0),第一个线程全部执行完成后才能继续执行loop(1),也就是要等待4秒之后。

而使用threading模块后,多线程同时运行, 在启动loop(0)的时候,同时启动了loop(1),loop1的等待是2秒,所以反而比loop0)的时候更早结束了线程,

所以有了上图的结果展现。

Thread也是多线程,但现在一般不使用,因为它没有守护线程,主线程退出时,子线程是否结束,都会强行退出。

threading是对thread的继续封装而成的,具备守护线程的功能。

下面说说threading的使用流程:

#创建线程

    List=[]          #创建一个空列表

    For i  in range(0,2):

    t=threading.Thread(target=xx,args())                           #xx是对应的方法或函数, args是对应XX需要带的参数

         List.append(t)                                                          #把封装好的线程加入列表中

#开始线程

    For i in rang(0,2):

         List[i].start()

#等待线程结束

    For i in range(0,2):

         List[i].join()  

猜你喜欢

转载自www.cnblogs.com/7dao/p/12628926.html