python的多线程示例代码
时间: 2023-05-17 10:07:26 浏览: 117
以下是一个简单的 Python 多线程示例代码:
```python
import threading
def worker(num):
"""线程要执行的任务"""
print('Worker %d started' % num)
# 执行任务
for i in range(10000000):
pass
print('Worker %d finished' % num)
if __name__ == '__main__':
# 创建 5 个线程
threads = []
for i in range(5):
t = threading.Thread(target=worker, args=(i,))
threads.append(t)
# 启动所有线程
for t in threads:
t.start()
# 等待所有线程执行完毕
for t in threads:
t.join()
print('All workers finished')
```
这个示例代码创建了 5 个线程,并让它们执行一个简单的任务。在实际应用中,可以根据需要创建更多的线程来提高程序的并发性能。
相关问题
多线程python代码示例
Python中的多线程主要通过`threading`模块来实现。以下是一个简单的多线程示例代码,它展示了如何创建一个线程来执行任务:
```python
import threading
# 这是将要在线程中执行的函数
def print_numbers():
for i in range(1, 6):
print(i)
# 模拟任务执行的时间间隔
time.sleep(1)
# 创建线程
thread = threading.Thread(target=print_numbers)
# 启动线程
thread.start()
# 等待线程完成
thread.join()
print("线程执行完毕")
```
在这个示例中,`print_numbers`函数会被在一个新的线程中执行,它会打印数字1到5,每次打印之间有1秒的延时。通过创建`Thread`对象并传递`print_numbers`函数作为目标,然后调用`start()`方法启动线程。`join()`方法用于等待线程结束。
需要注意的是,Python由于全局解释器锁(GIL)的存在,在标准的CPython解释器中,主线程在等待子线程完成之前不会继续执行,但是多线程在执行I/O密集型任务时仍然可以获得性能提升。
python3.7 实现多线程 代码示例
以下是一个使用Python 3.7实现多线程的代码示例:
```python
import threading
def print_numbers():
for i in range(1, 6):
print(i)
def print_letters():
for letter in ['a', 'b', 'c', 'd', 'e']:
print(letter)
# 创建两个线程
thread1 = threading.Thread(target=print_numbers)
thread2 = threading.Thread(target=print_letters)
# 启动线程
thread1.start()
thread2.start()
# 等待线程结束
thread1.join()
thread2.join()
```
这个示例中,我们创建了两个线程,一个用于打印数字,另一个用于打印字母。通过调用`start()`方法启动线程,然后使用`join()`方法等待线程结束。
阅读全文