[Mono-dev] WaitAny does not consistently return when waiting on more than one WaitHandle
Tom Philpot
tom.philpot at logos.com
Tue Dec 8 19:59:24 EST 2009
I¹ve finally gotten around to creating a Bugzilla case for this:
https://bugzilla.novell.com/show_bug.cgi?id=561792
Thanks,
Tom
On 11/25/09 3:59 PM, "Tom Philpot" <tom.philpot at logos.com> wrote:
> Zoltan,
>
> Would it help if I created a Mac OS specific bugzilla? Is there someone else
> that can test this on Mac? (Geoff N, perhaps)?
>
> This behavior is the same (i.e., consistently inconsistent) on 10.5 and 10.6
> for what it¹s worth.
>
> Tom
>
> On 11/25/09 3:55 PM, "Zoltan Varga" <vargaz at gmail.com> wrote:
>
>> Hi,
>>
>> This seems to work fine on linux.
>>
>> Zoltan
>>
>> On Thu, Nov 26, 2009 at 12:01 AM, Tom Philpot <tom.philpot at logos.com> wrote:
>>> We've written a small test case against Mono 2.7 (r146315) that confirms
>>> that WaitAny() does not return in a consistent amount of time, or sometimes
>>> at all when waiting on more than one WaitHandle. It also appears that there
>>> are no test cases in Mono for this case.
>>>
>>> Our attached program takes 2 arguments. The first is the number of
>>> milliseconds to wait before the wait handles are set, the second is the
>>> number of milliseconds to wait in before exiting to give the thread pool
>>> time to notify.
>>>
>>> We're running these tests on Mac OS X, if that helps.
>>>
>>>
>>>
>>> Example of Failure case:
>>>
>>> ws1048:Mono Patches tom.philpot$ /opt/mono/bin/mono WaitAnyTest.exe 35000
>>> 10000
>>> Setup wait handles, sleeping for 35s...
>>> Wait2: Calling WaitAny with 2 WaitHandles
>>> Wait1: Calling WaitAny with 1 WaitHandle
>>> done sleeping.
>>> Setting event 2.
>>> Sleeping for 10s to see if wait handles respond.
>>> Wait1: WaitAny(1) returned 0.
>>>
>>>
>>> Example of Successful case:
>>>
>>> ws1048:Mono Patches tom.philpot$ /opt/mono/bin/mono WaitAnyTest.exe 5000
>>> 10000
>>> Setup wait handles, sleeping for 5s...
>>> Wait1: Calling WaitAny with 1 WaitHandle
>>> Wait2: Calling WaitAny with 2 WaitHandles
>>> done sleeping.
>>> Setting event 2.
>>> Sleeping for 10s to see if wait handles respond.
>>> Wait1: WaitAny(1) returned 0.
>>> Wait2: WaitAny(2) returned 1.
>>> RegisteredWaitForSingleObjectCallback called.
>>>
>>>
>>> _______________________________________________
>>> Mono-devel-list mailing list
>>> Mono-devel-list at lists.ximian.com
>>> http://lists.ximian.com/mailman/listinfo/mono-devel-list
>>>
>>
>>
>
>
> _______________________________________________
> Mono-devel-list mailing list
> Mono-devel-list at lists.ximian.com
> http://lists.ximian.com/mailman/listinfo/mono-devel-list
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.ximian.com/pipermail/mono-devel-list/attachments/20091208/11502a20/attachment.html
More information about the Mono-devel-list
mailing list