线程

什么是线程:
线程是依赖于进程而存在的,线程之间的数据是共享的,并且线程的开销要小于进程。

如何创建一个线程?
可以通过两种方式来创建线程,第一种就是通过导入Python中的模块的方式。

# 第一种方式:
from threading import Thread
# 第二种方式:
用过类继承的方式来实现:
class MyThread(Thread):
  # 需要重写内部的run方法
  def run():


如何运行线程?

首先创建一个线程对象,其中内部的参数和进程所需要添加的参数是相同的。
之后采用    对象.start()    方法来启动线程。

线程的重命名和线程的传参

#例子如下
from threading import current_thread
class MyTread1(Thread):
    def __init__(self,name):
        super().__init__()
        self.name = name
    def run(self):
        for i in range(5):
            print('ALbert is study ',i)
            print(current_thread().name)
            time.sleep(0.2)              
class MyTread2(Thread):
    def __init__(self,name):
        super(MyTread2,self).__init__()
        self.name = name
    def run(self):
        for i in range(3):
            print('ALbert is listening_music ',i)
      
class MyTread3(Thread): 
    def __init__(self,uname,name):
        super(MyTread3,self).__init__()
        self.uname = uname
        self.name = name
    def run(self):
        for i in range(5):
            print(f'ALbert is chatting with {self.uname},the {i}')
if __name__  =='__main__':
    t1 = MyTread1('t1')
    t2 = MyTread2('t2')
    t3 = MyTread3('ning','t3')
    t1.start()
    t2.start()
    t3.start()
    t1.join()
    t2.join()
    t3.join()
    print('-------over---------')
# join表示插入,如果不加入join,那么over就会在每个线程之间进行输出,但是加上之后,保
#证over在最后进行输出。
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。