Re: make sure one timer fire before another
Re: make sure one timer fire before another
- Subject: Re: make sure one timer fire before another
- From: Ed Wynne <email@hidden>
- Date: Mon, 29 May 2006 15:43:17 -0400
On May 29, 2006, at 2:51 PM, Nir Soffer wrote:
I need two timers in a run loop, one should fire every second or
so, and the other may fire every 2 seconds or more. How can I make
sure that the 1 second timer fire always before the 2 seconds
timer, even if both are scheduled for the same fire date?
I need a solution I can easy tune later - the second timer may
repeat at the same rate or more then the first, but I may want to
change the fire interval of both, e.g use 0.5s and 4s as needed.
If you really need strict ordering, your best solution would be to
just use one timer (call it a physical timer) with a manually
computed next fire date base on a secondary list of virtual timers
(your own data structure). Every time your one physical timer fires,
you sample the current time and service any virtual timers that have
expired, then you recompute the next expiration base on the next
closest deadline from the virtual list. If you deterministically
process your list of virtual timers, you can enforce ordering any way
you wish.
-Ed
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Cocoa-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden