… | |
… | |
98 | Libev represents time as a single floating point number, representing the |
98 | Libev represents time as a single floating point number, representing the |
99 | (fractional) number of seconds since the (POSIX) epoch (somewhere near |
99 | (fractional) number of seconds since the (POSIX) epoch (somewhere near |
100 | the beginning of 1970, details are complicated, don't ask). This type is |
100 | the beginning of 1970, details are complicated, don't ask). This type is |
101 | called C<ev_tstamp>, which is what you should use too. It usually aliases |
101 | called C<ev_tstamp>, which is what you should use too. It usually aliases |
102 | to the C<double> type in C, and when you need to do any calculations on |
102 | to the C<double> type in C, and when you need to do any calculations on |
103 | it, you should treat it as such. |
103 | it, you should treat it as some floatingpoint value. Unlike the name |
|
|
104 | component C<stamp> might indicate, it is also used for time differences |
|
|
105 | throughout libev. |
104 | |
106 | |
105 | =head1 GLOBAL FUNCTIONS |
107 | =head1 GLOBAL FUNCTIONS |
106 | |
108 | |
107 | These functions can be called anytime, even before initialising the |
109 | These functions can be called anytime, even before initialising the |
108 | library in any way. |
110 | library in any way. |
… | |
… | |
402 | Destroys the default loop again (frees all memory and kernel state |
404 | Destroys the default loop again (frees all memory and kernel state |
403 | etc.). None of the active event watchers will be stopped in the normal |
405 | etc.). None of the active event watchers will be stopped in the normal |
404 | sense, so e.g. C<ev_is_active> might still return true. It is your |
406 | sense, so e.g. C<ev_is_active> might still return true. It is your |
405 | responsibility to either stop all watchers cleanly yoursef I<before> |
407 | responsibility to either stop all watchers cleanly yoursef I<before> |
406 | calling this function, or cope with the fact afterwards (which is usually |
408 | calling this function, or cope with the fact afterwards (which is usually |
407 | the easiest thing, youc na just ignore the watchers and/or C<free ()> them |
409 | the easiest thing, you can just ignore the watchers and/or C<free ()> them |
408 | for example). |
410 | for example). |
|
|
411 | |
|
|
412 | Note that certain global state, such as signal state, will not be freed by |
|
|
413 | this function, and related watchers (such as signal and child watchers) |
|
|
414 | would need to be stopped manually. |
|
|
415 | |
|
|
416 | In general it is not advisable to call this function except in the |
|
|
417 | rare occasion where you really need to free e.g. the signal handling |
|
|
418 | pipe fds. If you need dynamically allocated loops it is better to use |
|
|
419 | C<ev_loop_new> and C<ev_loop_destroy>). |
409 | |
420 | |
410 | =item ev_loop_destroy (loop) |
421 | =item ev_loop_destroy (loop) |
411 | |
422 | |
412 | Like C<ev_default_destroy>, but destroys an event loop created by an |
423 | Like C<ev_default_destroy>, but destroys an event loop created by an |
413 | earlier call to C<ev_loop_new>. |
424 | earlier call to C<ev_loop_new>. |
… | |
… | |
1220 | |
1231 | |
1221 | The current reschedule callback, or C<0>, if this functionality is |
1232 | The current reschedule callback, or C<0>, if this functionality is |
1222 | switched off. Can be changed any time, but changes only take effect when |
1233 | switched off. Can be changed any time, but changes only take effect when |
1223 | the periodic timer fires or C<ev_periodic_again> is being called. |
1234 | the periodic timer fires or C<ev_periodic_again> is being called. |
1224 | |
1235 | |
|
|
1236 | =item ev_tstamp at [read-only] |
|
|
1237 | |
|
|
1238 | When active, contains the absolute time that the watcher is supposed to |
|
|
1239 | trigger next. |
|
|
1240 | |
1225 | =back |
1241 | =back |
1226 | |
1242 | |
1227 | Example: Call a callback every hour, or, more precisely, whenever the |
1243 | Example: Call a callback every hour, or, more precisely, whenever the |
1228 | system clock is divisible by 3600. The callback invocation times have |
1244 | system clock is divisible by 3600. The callback invocation times have |
1229 | potentially a lot of jittering, but good long-term stability. |
1245 | potentially a lot of jittering, but good long-term stability. |