العودة إلى الفهرس / أدوات التطوير
Python asyncio: استخدم غير المتزامن عند الحاجة لإدخال وإخراج متوازٍ
صمم حلقة الأحداث وتزامن المهام والإلغاء والمهل ونقل العمل الحاجب.
المهارات
قدّر أولاً الإدخال والإخراج المتزامن مقابل عمل CPU؛ فقد يكون النمط المتزامن أبسط لبرنامج قليل التوازي. إذا استخدمت asyncio فأبقِ المسار غير متزامن واستخدم عملاء async واتصالات معاد استخدامها وتجنب الحجب. قيد المهام عبر TaskGroup أو semaphore ومرر الإلغاء والأخطاء وضع مهلاً للاتصالات الخارجية. انقل عمل CPU الثقيل إلى `asyncio.to_thread()` أو مجمع عمليات. اختبر الإلغاء والتنظيف والتبعيات البطيئة واستخدم القياس لتبرير تحسن الإنتاجية.
الصلاحيات
المتطلبات السابقة
- لبناء واجهات Python أو عملاء الشبكة أو WebSocket أو مهام ذات إدخال وإخراج متزامن كثير.
- أكد أن الحمل متعلق بالإدخال والإخراج؛ وقد تناسب البرامج البسيطة أو CPU-heavy النمط المتزامن أو العمليات.
الصلاحيات
- يمكنها تعديل المسارات غير المتزامنة ودورة حياة العملاء وجدولة المهام.
- يحظر الإدخال والإخراج الحاجب حلقة الأحداث؛ لا تحول الشيفرة لمجرد افتراض السرعة.
القيود
حافظ على اتساق المسار المتزامن أو غير المتزامن؛ وانقل CPU إلى منفذ مناسب ومرر الإلغاء والأخطاء إلى مالك المهمة.
المصدر الأصلي المثبت
- المستودع
- wshobson/agents
- مسار الملف
- plugins/python-development/skills/async-python-patterns/SKILL.md
- الإيداع المثبت
46891e7e60da0e52baf1050b7b6391b64e84c6d9- تاريخ فحص المصدر
- 2026-10-14 · تمت المراجعة مقابل المصدر الأصلي المثبت
مقاييس المستودع
تعكس هذه القيم المستودع الأصلي كله، ولا تمثل إعجابات أو شعبية مهارة أو دليل منفرد.
- النجوم
- لم يُجمع
- التفرعات
- لم يُجمع
- وقت الرصد
- لم يُجمع
لا تتوفر لقطة مقاييس بعد.
الترخيص: MIT
الأدوات المتوافقة
asyncio event loop · pytest-asyncio · Thread/process executors
الموضوع الرئيسي
انقل مساعد البرمجة من فهم السياق إلى التحقق من التغيير