欢迎访问宙启技术站
智能推送

Python中使用start()函数启动并发执行的多个任务

发布时间:2023-12-29 05:41:27

在Python中,可以使用多线程或多进程实现并发执行的多个任务。使用start()函数可以启动这些任务并让它们同时执行。

1. 多线程并发执行任务的例子:

import threading

# 定义一个线程执行的任务
def task(name):
    print(f'Task {name} started')
    # 假设任务需要执行一段时间
    for i in range(1000000):
        pass
    print(f'Task {name} completed')

# 创建并启动多个线程执行任务
thread1 = threading.Thread(target=task, args=('Task 1',))
thread2 = threading.Thread(target=task, args=('Task 2',))

thread1.start()
thread2.start()

这段代码使用了threading库创建了两个线程,并分别给它们指定了执行的任务。通过start()函数来启动线程,并让它们并发执行。

2. 多进程并发执行任务的例子:

import multiprocessing

# 定义一个进程执行的任务
def task(name):
    print(f'Task {name} started')
    # 假设任务需要执行一段时间
    for i in range(1000000):
        pass
    print(f'Task {name} completed')

# 创建并启动多个进程执行任务
process1 = multiprocessing.Process(target=task, args=('Task 1',))
process2 = multiprocessing.Process(target=task, args=('Task 2',))

process1.start()
process2.start()

这段代码使用了multiprocessing库创建了两个进程,并分别给它们指定了执行的任务。通过start()函数来启动进程,并让它们并发执行。

无论是多线程还是多进程,通过start()函数都可以让任务并发执行,而不需要等待上一个任务执行完成。这样可以提高程序的执行效率,特别适用于需要执行耗时的任务或需要同时处理多个请求的场景。

需要注意的是,并发执行的任务可能会涉及到共享资源的访问,这时候需要注意对共享资源的加锁操作,以避免竞争条件的产生。