1. 线程是什么多线程
2. 线程和进程的区别并发
3.多线程的举例ide
方式一:函数式开启线程函数
1 from threading import Thread 2 from time import sleep 3 4 5 def read(name): 6 print('%s start read!' % name) 7 sleep(3) 8 print('%s stop read!' % name) 9 10 11 if __name__ == '__main__': 12 t = Thread(target=read,args=('sjingx',)) 13 t.start() 14 print('主线程')
方式二:类继承方式开启线程工具
1 from threading import Thread 2 from time import sleep 3 4 5 class Read(Thread): 6 def __init__(self, name): 7 super().__init__() 8 self.name = name 9 10 def run(self): 11 print('%s start read!' % self.name) 12 sleep(3) 13 print('%s stop read!' % self.name) 14 15 16 if __name__ == '__main__': 17 r = Read('sjingx') 18 r.run() 19 print('主线程')
1. 基于多线程实现并发的套接字通讯。spa
2. 编写一个简单的文本处理工具,具有三个任务,一个接收用户输入,一个将用户输入的内容格式化成大写,一个将格式化后的结果存入文件。线程
在主进程下开启线程code
import time from multiprocessing import Process from threading import Thread # 开启进程 class Read(Process): def __init__(self, name): super().__init__() self.name = name def run(self): print('%s start read' % self.name) if __name__ == '__main__': t1 = time.time() r = Read('sjingx') r.start() print('主进程') t2 = time.time() print(t2-t1) # 结果是: # 主进程 # 0.024098873138427734 # sjingx start read
在主进程下开启进程对象
import timefrom threading import Thread # 开启线程 class Read(Thread): def __init__(self, name): super().__init__() self.name = name def run(self): print('%s start read' % self.name) if __name__ == '__main__': t1 = time.time() r = Read('sjingx') r.start() print('主线程') t2 = time.time() print(t2-t1) # 运行结果: # sjingx start read # 主线程 # 0.001003265380859375