Computer >> Máy Tính >  >> Lập trình >> Python

Khởi chạy các tác vụ song song trong Python

Nếu một chương trình Python có thể được chia thành các chương trình con đang xử lý không phụ thuộc vào nhau, thì mỗi chương trình con có thể được chạy song song khi chương trình tổng thể đang được chạy. Khái niệm này được gọi là xử lý song song trong Python.

Với đa xử lý

Mô-đun này có thể được sử dụng để tạo nhiều quy trình con của một quy trình chính có thể chạy song song. Trong chương trình dưới đây, chúng tôi khởi tạo một quy trình và sau đó sử dụng phương thức run để chạy nhiều quy trình con. Chúng ta có thể thấy các quy trình con khác nhau trong câu lệnh in bằng cách sử dụng id quy trình. Chúng tôi cũng sử dụng phương pháp ngủ để xem lần lượt in các câu lệnh có độ trễ nhỏ.

Ví dụ

import multiprocessing
import time

class Process(multiprocessing.Process):
   def __init__(self, id):
      super(Process, self).__init__()
      self.id = id

   def run(self):
      time.sleep(1)
      print("Running process id: {}".format(self.id))

if __name__ == '__main__':
   p = Process("a")
   p.start()
   p.join()
   p = Process("b")
   p.start()
   p.join()
   p = Process("c")
   p.start()
   p.join()

Đầu ra

Chạy đoạn mã trên cho chúng ta kết quả sau -

Running process id: a
Running process id: b
Running process id: c