سؤال

الوثائق على CancellationToken.CanBeCanceled يصف ما يفعله ، لكنه لا يذكر متى يمكن أن يكون خطأ. وبالتالي ، ليس من الواضح تمامًا بالنسبة لي عندما يجب أن أولي الانتباه إلى هذا العقار.

في أي ظروف يمكن أن تكون خاطئة ومتى يجب أن أنظر إليها؟

هل كانت مفيدة؟

المحلول

نحن سوف، cancellationToken.none إرجاع واحد لا يمكن إلغاؤه.

إذا كنت من مستخدم واجهة برمجة التطبيقات التي تصر على استلام CancellationToken ، لكن لم تكن لديك مصلحة في محاولة إلغاء العمل ، فيمكنك فقط تمرير هذا الرمز المميز.

مثل شخص ما بناء API ، قد تكون قادرًا على إجراء تحسينات معينة في حالة عودة CanBecancelled False - ربما يكون "باهظ الثمن" للتحقق من الممتلكات المطلوبة.

نصائح أخرى

على سبيل المثال ، عندما يكون رمز "كامل" لطريقة ASYNC هو استدعاء طريقة واحدة على الجهاز البعيد (الخادم على سبيل المثال) والتي لا يمكن إلغاؤها (الجهاز البعيد لا يوفر أي طريقة ، وكيفية إلغاء ذلك). بعد ذلك ، لا يمكن إلغاء المهمة -> لا يمكن إكمال المهمة إلا (أو استثناء).

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top