GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
iv_timer(3) ivykis programmer's manual iv_timer(3)

iv_timer_register, iv_timer_unregister, iv_timer_registered - deal with ivykis timers

#include <iv.h>

struct iv_timer {
        struct timespec         expires;
        void                    *cookie;
        void                    (*handler)(void *);
};

void IV_TIMER_INIT(struct iv_timer *timer);
void iv_timer_register(struct iv_timer *timer);
void iv_timer_unregister(struct iv_timer *timer);
int iv_timer_registered(const struct iv_timer *timer);

The functions iv_timer_register and iv_timer_unregister register, respectively unregister, a timer with the current thread's ivykis event loop. iv_timer_registered on a timer returns true if that timer is currently registered with ivykis.

When a timer that is registered becomes 'ready', due to the current system clock value becoming greater than or equal to the timer's ->expires member field, the callback function specified by ->handler is called in the thread that the timer was registered in, with ->cookie as its first and sole argument. When this happens, the timer is transparently unregistered.

The application is allowed to change the ->cookie and ->handler members at any time. The application is not allowed to change the ->expires member while the timer is registered.

A given struct iv_timer can only be registered in one thread at a time, and a timer can only be unregistered in the thread that it was registered from.

There is no limit on the number of timers registered at once.

See iv_examples(3) for programming examples.

ivykis(3), iv_examples(3)
2010-08-15 ivykis

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.