async
طريقة في البرمجة غير المتزامنة C#:
عند البرمجة بشكل غير متزامن باستخدام C#، يمكن أن تعود طريقة async
هذا الاختيار أمر بالغ الأهمية لأنه يحدد سلوك الطريقة وكيفية تفاعله مع رمز الاتصال. متى ستعود المهمة
]
عادة ، عندما تريد فضح التقدم أو النتيجة لعملية غير متزامنة للمتصل ، يجب أن تعيد المهمة
. يتيح ذلك للمتصل انتظار المهمة ومتابعة التنفيذ بعد اكتماله. يمكن أن تستخدم المهمة
async-foreach
، حيث يمكن مراقبة تقدم المهام المتعددة. متى ستعود void
]
الحالة المناسبة الوحيدة للعودة void
من الطريقة
في هذه الحالات ، يجب ألا يكون المتصل قادرًا على انتظار هذه الطريقة ، و
async في انتظار غير مطلوبة.
تجنب المستوى العلوي
الأساليب المحددة async void لها دلالات خاصة ويجب استخدامها بحذر. وهي تمثل العمليات غير المتزامنة من المستوى الأعلى ولديها قواعد معالجة استثناءات مختلفة عن الأساليب التي تعيد المهام. يتم التعامل مع الاستثناءات في المستوى الأعلى
طريقة void كاستثناءات غير معطلة ويمكن أن تؤدي إلى سلوك غير متوقع.
على سبيل المثال ، فكر في الكود التالي:
async void غير ضروري وقد يكون مشكلة لأن:
يمنع المتصل من انتظار الطريقة ومراقبة تقدمه.
وقد تتسبب في تصرف التطبيق بشكل غير طبيعي.
public static async void AsyncMethod2(int num)
{
await Task.Factory.StartNew(() => Thread.Sleep(num));
}
وطريقة في انتظار لضمان معالجة الاستثناء الصحيحة والحفاظ على القدرة على تتبع العمليات غير المتزامنة.
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3