python多线程和多进程的案例
时间: 2023-07-22 17:07:29 浏览: 156
python多线程实例
多线程和多进程都是Python中常用的并发编程方式,下面分别给出一个简单的案例进行说明。
## 多线程案例
```python
import threading
def print_num(num):
for i in range(num):
print(i)
if __name__ == '__main__':
t1 = threading.Thread(target=print_num, args=(5,))
t2 = threading.Thread(target=print_num, args=(5,))
t1.start()
t2.start()
t1.join()
t2.join()
```
以上代码创建了两个线程,分别执行`print_num`函数打印数字。`start()`方法启动线程,`join()`方法等待线程执行完毕。由于Python的GIL锁机制,多线程并不能利用多核CPU,并发性能相对于多进程较低。
## 多进程案例
```python
from multiprocessing import Process
def print_num(num):
for i in range(num):
print(i)
if __name__ == '__main__':
p1 = Process(target=print_num, args=(5,))
p2 = Process(target=print_num, args=(5,))
p1.start()
p2.start()
p1.join()
p2.join()
```
以上代码创建了两个进程,分别执行`print_num`函数打印数字。`start()`方法启动进程,`join()`方法等待进程执行完毕。由于多进程可以利用多核CPU,因此相对于多线程具有更好的并发性能。但是多进程会涉及到进程间通信、资源共享等问题,需要注意处理。
阅读全文