No... the procedure alarms are called from the same thread that runs
the main application user interface.  There's nothing to yield to
while your code is running as it's being called by the system duirng
the time between events.

On 5/2/06, Michael P. Plezbert <[EMAIL PROTECTED]> wrote:
Hi everyone,

I have a long-running procedure that I'm calling as a procedure alarm.
The problem is that the device stops responding to events while my
procedure is running.

Is there some way that I can "yield" the processor, or in some other way
let the foreground task process events?

I've tried calling SysTaskDelay, but that doesn't seem to do it.

I've also tried calling EvtGetEvent and SysHandleEvent, but that just
seems to consume the events without actually doing anything.

The only thing I've been able to think of would be to break my long
procedure into a bunch of shorter procedures and have each schedule the
next as an alarm procedure, but that will be a painful, ugly thing to do.

So, I thought I'd ask first if anyone has a better way to do this.  Is
there some way to periodically let the system and foreground task handle
events while my procedure is running (something similar to a "yield" in
cooperative multitasking systems)?

--
For information on using the PalmSource Developer Forums, or to unsubscribe, 
please see http://www.palmos.com/dev/support/forums/

Reply via email to