بايثون العرب
10.4K subscribers
871 photos
183 videos
770 links
Download Telegram
🚀 البرمجة متعددة العمليات في بايثون 🚀

تعلم كيف تستفيد من قوة المعالجات المتعددة لتحسين أداء برامجك في بايثون باستخدام وحدة `multiprocessing`.

from multiprocessing import Process

def greet(name):
print(f'Hello, {name}!')

if __name__ == '__main__':
p = Process(target=greet, args=('World',))
p.start()
p.join()


تسمح لك وحدة `multiprocessing` بإنشاء عمليات جديدة تعمل بالتوازي. في هذا المثال، نقوم بإنشاء عملية جديدة لتنفيذ دالة `greet`. `p.start()` تبدأ العملية، و `p.join()` تنتظر انتهاء العملية قبل المتابعة.

['#بايثون', '#برمجة', '#Multiprocessing', '#توازي', '#أداء']
👍1
🚀 تحسين أداء Python: دليل الأوامر المتعددة 🚀

هل تبحث عن طرق لتسريع أكواد Python الخاصة بك؟ اكتشف كيف يمكن للأوامر المتعددة (multiple commands) أن تحدث فرقًا كبيرًا في الأداء، خاصة عند التعامل مع المهام المتكررة أو الحسابات المعقدة.

import time

def calculate_sum(n):
total = 0
for i in range(n):
total += i
return total

def calculate_product(n):
total = 1
for i in range(1, n + 1):
total *= i
return total

start_time = time.time()
result_sum = calculate_sum(1000000)
result_product = calculate_product(10000)
end_time = time.time()

print(f"Sum: {result_sum}")
print(f"Product: {result_product}")
print(f"Execution time: {end_time - start_time:.4f} seconds")

# مثال على استخدام أوامر متعددة (افتراضي، يحتاج لبيئة تدعم ذلك)
# import multiprocessing
# pool = multiprocessing.Pool(processes=2)
# results = pool.starmap(max, [(calculate_sum, calculate_product)]) # هذا مثال توضيحي فقط
# pool.close()
# pool.join()


يوضح هذا الكود كيفية حساب مجموع وضرب أعداد كبيرة. بينما الكود الأساسي يقوم بتنفيذها بشكل تسلسلي، فإن الجزء المعلق يشير إلى إمكانية استخدام مكتبات مثل `multiprocessing` لتشغيل هذه العمليات بشكل متوازٍ، مما يقلل بشكل كبير من وقت التنفيذ الإجمالي على المعالجات متعددة النوى. هذا هو جوهر استخدام الأوامر المتعددة لتحسين الأداء.

['#Python', '#برمجة', '#تحسين_الأداء', '#تطوير_البرمجيات', '#PythonTips', '#Multiprocessing']