At 12:20 PM -0400 5/11/04, Simon Glover wrote:
 One quick point: unless I'm misunderstanding something, there seems to
 be no easy way to wait on multiple events to complete if those events
 can occur in any order. For instance, suppose we have 5 events, P1 - P5
 If we know that the events will occur in some specified order (say
 1-2-3-4-5), then we can just loop over C<wait Px>, specifying the
 apporpriate x for each iteration. However, if the events actually occur
 in the order 4-3-2-5-1, we'll drop events 2-5 while waiting for 1.
 Now, this is fine if 1 _must_ happen before 2 etc., but often this is
 more restrictive than we need to be, since all we really care about is
 ensuring that all 5 events are handled before we do anything else.
 Is there any easy and efficient way to do this with the current
 framework?

There's no easy way, no. The best you could do is have the code:

   wait E1
   wait E2
   wait E3
   wait E4
   wait E5

which'll work (and everything'll get processed properly, and as soon as it's available) but is somewhat nasty.

Thinking we might want:

   waitall Parray_of_events
   waitany Parray_of_events

?
--
                                        Dan

--------------------------------------"it's like this"-------------------
Dan Sugalski                          even samurai
[EMAIL PROTECTED]                         have teddy bears and even
                                      teddy bears get drunk

Reply via email to