On 11 Nov 2009, at 00:55, epergola wrote:

Is there a way (or a 3rd party component or a library) to catch an endless
loop after x seconds
in applications running on arm Wince?

It is not possible to know whether a loop is endless or not (at least not in the general case, see the "halting problem"). If you simply want to know whether your application has run its main loop within the last x seconds, you can use a global variable and an extra thread: * set the variable to 1 in the thread and sleep x seconds (note that you have to do this with interlockedexchange, otherwise you can get memory synchronisation issues)
* set it to 0 whenever you execute the main application loop (idem)
* if it's still 1 when the thread wakes up then the main application loop has not run for x seconds

If you have multiple threads in your program, you will need multiple global variables.


Jonas
_______________________________________________
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal

Reply via email to