… | |
… | |
954 | These two functions can be used to associate arbitrary data with a loop, |
954 | These two functions can be used to associate arbitrary data with a loop, |
955 | and are intended solely for the C<invoke_pending_cb>, C<release> and |
955 | and are intended solely for the C<invoke_pending_cb>, C<release> and |
956 | C<acquire> callbacks described above, but of course can be (ab-)used for |
956 | C<acquire> callbacks described above, but of course can be (ab-)used for |
957 | any other purpose as well. |
957 | any other purpose as well. |
958 | |
958 | |
959 | =item ev_loop_verify (loop) |
959 | =item ev_verify (loop) |
960 | |
960 | |
961 | This function only does something when C<EV_VERIFY> support has been |
961 | This function only does something when C<EV_VERIFY> support has been |
962 | compiled in, which is the default for non-minimal builds. It tries to go |
962 | compiled in, which is the default for non-minimal builds. It tries to go |
963 | through all internal structures and checks them for validity. If anything |
963 | through all internal structures and checks them for validity. If anything |
964 | is found to be inconsistent, it will print an error message to standard |
964 | is found to be inconsistent, it will print an error message to standard |
… | |
… | |
4040 | The default is C<1>, unless C<EV_FEATURES> overrides it, in which case it |
4040 | The default is C<1>, unless C<EV_FEATURES> overrides it, in which case it |
4041 | will be C<0>. |
4041 | will be C<0>. |
4042 | |
4042 | |
4043 | =item EV_VERIFY |
4043 | =item EV_VERIFY |
4044 | |
4044 | |
4045 | Controls how much internal verification (see C<ev_loop_verify ()>) will |
4045 | Controls how much internal verification (see C<ev_verify ()>) will |
4046 | be done: If set to C<0>, no internal verification code will be compiled |
4046 | be done: If set to C<0>, no internal verification code will be compiled |
4047 | in. If set to C<1>, then verification code will be compiled in, but not |
4047 | in. If set to C<1>, then verification code will be compiled in, but not |
4048 | called. If set to C<2>, then the internal verification code will be |
4048 | called. If set to C<2>, then the internal verification code will be |
4049 | called once per loop, which can slow down libev. If set to C<3>, then the |
4049 | called once per loop, which can slow down libev. If set to C<3>, then the |
4050 | verification code will be called very frequently, which will slow down |
4050 | verification code will be called very frequently, which will slow down |
… | |
… | |
4637 | watchers. |
4637 | watchers. |
4638 | |
4638 | |
4639 | =item C<double> must hold a time value in seconds with enough accuracy |
4639 | =item C<double> must hold a time value in seconds with enough accuracy |
4640 | |
4640 | |
4641 | The type C<double> is used to represent timestamps. It is required to |
4641 | The type C<double> is used to represent timestamps. It is required to |
4642 | have at least 51 bits of mantissa (and 9 bits of exponent), which is good |
4642 | have at least 51 bits of mantissa (and 9 bits of exponent), which is |
4643 | enough for at least into the year 4000. This requirement is fulfilled by |
4643 | good enough for at least into the year 4000 with millisecond accuracy |
|
|
4644 | (the design goal for libev). This requirement is overfulfilled by |
4644 | implementations implementing IEEE 754, which is basically all existing |
4645 | implementations using IEEE 754, which is basically all existing ones. With |
4645 | ones. With IEEE 754 doubles, you get microsecond accuracy until at least |
4646 | IEEE 754 doubles, you get microsecond accuracy until at least 2200. |
4646 | 2200. |
|
|
4647 | |
4647 | |
4648 | =back |
4648 | =back |
4649 | |
4649 | |
4650 | If you know of other additional requirements drop me a note. |
4650 | If you know of other additional requirements drop me a note. |
4651 | |
4651 | |