Re: Timer in C



Alexander Mahone <salvodanilogiuffrida@xxxxxxxxx> writes:
Hello, I'm referring to a thread that I started some days ago on
comp.lang.c:
http://groups.google.it/group/comp.lang.c/browse_thread/thread/f99fda3046794678/297684b31a81dcd2?hl=it&lnk=gst&q=timer#297684b31a81dcd2.
I read various documentation on the Internet, but I think neither
ualarm() or setitimer() satisfy me completely. What I need to do, in
fact, is create a series of different timers inside a process, like
timer objects (of course, not true objects, but conceptually it's like
an object), each one referrable, with some kind of reference (a
pointer). Then, under certain conditions, I need to reset one or more
of them (that's why I need some way to refer to every single timer
specificly), to prevent them sending the SIGALARM (any other kind of
signal they might send), because otherwise I line in the console is
written with 'puts("Alarm: The timer x has expired")' or printf(), at
each expiration of each timer.
From what I've read, both ualarm() and setitimer() (the first is
actually based on the second) allows you to manage one single global
timer, the one of the caller process...
So, in my opinion (correct me if I'm wrong, my knownledge of C is
quite limited) the only 2 ways to do this would be:
1 - Create a series of threads, one for each timer I want to create,
and inside each thread call ualarm(), to set the per-thread timer...Or
maybe I'd need to create child processes, instead of threads?
2 - Use a series of timer_create(), without the need to create any per-
timer thread...
Is there a simpler and more lightweight way to do this?
Thanks a lot

Link your "timer objects" into a sorted list (shortest wakeup first);
Using a single thread, have it wait until the next wakeup, then deliver
the timer (raise a signal, signal a condition variable, post a bit,
whatever), delink the element and wait for the next wakeup.

scott
.



Relevant Pages

  • Re: timer and triggers
    ... I'm trying to generate triggers at the start of specific times so I've ... created a timer object. ... random variables. ... I also have two timer objects per event per node: ...
    (comp.soft-sys.matlab)
  • Re: Threading Timer_Elapsed
    ... The following article in MSDN Magazine explains the difference between the ... three timer objects in .NET & when to use each. ... > library for threading topics, but I get confused with the code that is ...
    (microsoft.public.dotnet.languages.vb)
  • Re: HotSpot crashed on Linux
    ... I don't think these threads go away till the timer objects get ... It's much better to have a single timer object with ... Wolf a.k.a. Juha Laiho Espoo, ...
    (comp.lang.java.machine)
  • Re: Timer Tick Event not Working in Windows Service
    ... In addition to the others comments, the following articles in MSDN Magazine ... explain the difference between the three timer objects in .NET & when to use ... > I have a Windows Service with a timer but the .Tick event is not being ...
    (microsoft.public.dotnet.languages.csharp)
  • Re: Timer in C
    ... timer objects (of course, not true objects, but conceptually it's like ... of them (that's why I need some way to refer to every single timer ... both ualarm() and setitimer() (the first is ...
    (comp.unix.programmer)