如何在Python中使用多线程和多进程

804
2024/5/29 13:48:02
栏目: 编程语言
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在Python中,可以使用`threading`模块来创建和管理多线程,使用`multiprocessing`模块来创建和管理多进程。

以下是一个使用多线程的例子:

```python

import threading

def print_numbers():

for i in range(1, 6):

print(i)

thread1 = threading.Thread(target=print_numbers)

thread2 = threading.Thread(target=print_numbers)

thread1.start()

thread2.start()

thread1.join()

thread2.join()

print("Done")

```

在这个例子中,我们创建了两个线程`thread1`和`thread2`,它们都会调用`print_numbers`函数来打印数字1到5。然后通过调用`start`方法启动线程,最后通过调用`join`方法等待线程执行完毕。

以下是一个使用多进程的例子:

```python

import multiprocessing

def print_numbers():

for i in range(1, 6):

print(i)

process1 = multiprocessing.Process(target=print_numbers)

process2 = multiprocessing.Process(target=print_numbers)

process1.start()

process2.start()

process1.join()

process2.join()

print("Done")

```

在这个例子中,我们创建了两个进程`process1`和`process2`,它们也会调用`print_numbers`函数来打印数字1到5。然后通过调用`start`方法启动进程,最后通过调用`join`方法等待进程执行完毕。

需要注意的是,在使用多线程时,Python的全局解释锁(GIL)会限制同一时刻只能有一个线程执行Python字节码,因此在多核CPU上并不能真正实现并行执行。而在使用多进程时,每个进程都有自己独立的Python解释器,因此可以实现真正的并行执行。

辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读: Python怎么实现图形用户界面