যদি একটি পাইথন প্রোগ্রামকে এমন সাবপ্রোগ্রামে বিভক্ত করা যায় যারা প্রক্রিয়া করছে তারা একে অপরের উপর নির্ভর করে না, তাহলে সামগ্রিক প্রোগ্রাম চালানোর সময় প্রতিটি সাবপ্রোগ্রাম সমান্তরালভাবে চালানো যেতে পারে। এই ধারণাটি পাইথনে সমান্তরাল প্রক্রিয়াকরণ হিসাবে পরিচিত।
মাল্টিপ্রসেসিং সহ
এই মডিউলটি একটি প্রধান প্রক্রিয়ার অনেকগুলি শিশু প্রক্রিয়া তৈরি করতে ব্যবহার করা যেতে পারে যা সমান্তরালভাবে চলতে পারে। নীচের প্রোগ্রামে আমরা একটি প্রক্রিয়া শুরু করি এবং তারপর একাধিক সাব-প্রসেস চালানোর জন্য রান পদ্ধতি ব্যবহার করি। প্রসেস আইডি ব্যবহার করে আমরা প্রিন্ট স্টেটমেন্টে বিভিন্ন সাব প্রসেস দেখতে পারি। একের পর এক ছোট বিলম্বে স্টেটমেন্ট প্রিন্ট করতে আমরা ঘুমের পদ্ধতিও ব্যবহার করি।
উদাহরণ
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()
আউটপুট
উপরের কোডটি চালানো আমাদের নিম্নলিখিত ফলাফল দেয় -
Running process id: a Running process id: b Running process id: c