آلية مهلة الإشارة في C #
سؤال
لا أحد يعرف كيف يتعامل مع صافي مهلة على استدعاء Semaphore.WaitOne(timeout)
؟
وأتوقع لTimeoutException
، ولكن وثائق MSDN لا تسرد هذا في قائمة الاستثناءات المتوقعة، وأنا لا يمكن أن يبدو للعثور عليه موثقة في أي مكان.
ويرجع الفضل في ذلك مسبقا!
المحلول
وهذه الطريقة سوف يعود false
إذا انقضاء المهلة، وtrue
اذا عاد إشارة:
if (mySemaphore.WaitOne(1000))
{
// signal received
}
else
{
// wait timed out
}
لا تنتمي إلى StackOverflow