تعدد المهام

يتيح Multitass برامج Python لاستخدام المولدات (AKA Coroutines) لأداء تعدد المهام التعايشية وغير المتزامن I / O.
التحميل الان

تعدد المهام الترتيب والملخص

الإعلانات

  • Rating:
  • رخصة:
  • MIT/X Consortium Lic...
  • السعر:
  • FREE
  • اسم الناشر:
  • Chris Stawarz
  • موقع ويب الناشر:
  • http://o2s.csail.mit.edu/o2s-wiki/multitask

تعدد المهام العلامات


تعدد المهام وصف

يتيح Multitass برامج Python استخدام المولدات (AKA Coroutines) لأداء تعدد المهام التعاونية وغير المتزامن I / O. يتيح Multitass برامج Python استخدام المولدات (AKA Coroutines) لأداء تعدد المهام التعاونية وغير المتزامن I / O. تتكون التطبيقات المكتوبة باستخدام Multitass من مجموعة من المهام التعاونية التي تسفر عن مدير مهام مشترك كلما أداء عملية حظر (محتمل)، مثل I / O على مقبس أو الحصول على بيانات من قائمة انتظار. يعلق إدارة المهام مؤقتا (السماح للمهام الأخرى بالتشغيل في هذه الأثناء) ثم أعد تشغيله عند اكتمال عملية الحظر. مثل هذا النهج مناسب للتطبيقات التي من شأنها أن تستخدم تحديد () و / أو مؤشرات الترابط متعددة لتحقيق التزامن. هذا المشروع هو برنامج مجاني، موزز تحت ترخيص MIT.Examamples: كمثال بسيط للغاية، إليك كيف يمكن للمرء استخدامه التعدد المهتاحثة للسماح لمهامين غير مرتبطين بالتشغيل بشكل متزامن: >>> طابعة DEF (رسالة): ... في حين صحيح: ... طباعة رسالة ... >>> Multitass.add (الطابعة ("Hello") ) >>>> Multitass.add (الطابعة ("وداعا")) >>> multitassask.run () hellogoodbyehellogoodbyehellogoodbyeehellogoodbye اتصالات العميل المتزامنة: Def Listener (جورب): أثناء True: Conn، العنوان = (Ground Multitask.accept (جورب)) multitask.add (client_handler (conn)) def client_handler (جورب): أثناء صحيح: طلب = (العائد المتعدد. Recv (جورب، 1024)) إن لم يكن الطلب: استجابة استراحة = مقبض (طلب) العائد Multitask.send (جورب، استجابة) multitask.add (المستمع (جورب)) Multitass.run () تسمح الوظائف والفئات في وحدة التعدد المتعددة المهام بإحداث عمليات I / O على مآخذ واصفات الملفات، إضافة / إزالة البيانات من / إلى قوائم الانتظار، أو النوم لفترة زمنية محددة. عند الإنساء، يمكن أن تحدد المهمة أيضا مهلة. إذا لم تكتمل العملية التي تسفر عنها المهمة بعد العدد المحدد من الثواني، تتم إعادة تشغيل المهمة، ويتم رفع استثناء مهلة عند نقطة العائد. يمكن أن تسفر أيضا عن إجراء مهام أخرى، والتي تسمح بتكوين المهام وإعادة استخدامها من رمز تعدد المهام الموجود. يعمل المهمة الطفل حتى يكمل أو يثير استثناء، ويتم نشر إخراجه أو استثناءه إلى والده. على سبيل المثال: >>> DEF PARTER (): ... حاول: ... طباعة "طفل جيد يقول: s ' (الطفل العائد ()) ... طباعة" الطفل السيئ يقول: S' (العائد الطفل (سيء = صحيح)) ... باستثناء الاستثناء، E: ... طباعة "اشتعلت استثناء: S ' E ... >>> Def Child (Bad = False): ... إذا كان سيئا: .. . رفع RuntimeError ("عفوا!") ... العائد "مرحبا يا أمي! ... >>> multitass.add (الوالدين () >>> multitass.run () الطفل الطيب يقول: مرحبا، أمي! اشتعلت استثناء: عفوا! المتطلبات: Python 2.5 أو ThereWhat جديد في هذا الإصدار: إرجاع المهام الفردية الآن القيم إلى والديهم من خلال رفع القيم مع قيم العودة كحجج. تمت إضافة get_default_task_manager () إلى توفير الوصول إلى مثيل المهام الافتراضي المستخدمة من خلال إضافة () وتشغيل (). تمت إضافة ReadLine ()، والتي (على أنظمة مثل UNIX) مفيدة للقيام بعدم الحظر يقرأ من STDOT لعملية الطفل.


تعدد المهام برامج ذات صلة