… | |
… | |
419 | race-free signal handling in perl, requiring C libraries for this. |
419 | race-free signal handling in perl, requiring C libraries for this. |
420 | AnyEvent will try to do its best, which means in some cases, signals |
420 | AnyEvent will try to do its best, which means in some cases, signals |
421 | will be delayed. The maximum time a signal might be delayed is 10 |
421 | will be delayed. The maximum time a signal might be delayed is 10 |
422 | seconds by default, but can be overriden via |
422 | seconds by default, but can be overriden via |
423 | $ENV{PERL_ANYEVENT_MAX_SIGNAL_LATENCY} or $AnyEvent::MAX_SIGNAL_LATENCY |
423 | $ENV{PERL_ANYEVENT_MAX_SIGNAL_LATENCY} or $AnyEvent::MAX_SIGNAL_LATENCY |
424 | - see the Ö<ENVIRONMENT VARIABLES> section for details. |
424 | - see the "ENVIRONMENT VARIABLES" section for details. |
425 | |
425 | |
426 | All these problems can be avoided by installing the optional |
426 | All these problems can be avoided by installing the optional |
427 | Async::Interrupt module, which works with most event loops. It will not |
427 | Async::Interrupt module, which works with most event loops. It will not |
428 | work with inherently broken event loops such as Event or Event::Lib (and |
428 | work with inherently broken event loops such as Event or Event::Lib (and |
429 | not with POE currently). For those, you just have to suffer the delays. |
429 | not with POE currently). For those, you just have to suffer the delays. |
… | |
… | |
1214 | This ensures that child processes will not see the "AE_" variables. |
1214 | This ensures that child processes will not see the "AE_" variables. |
1215 | |
1215 | |
1216 | The following environment variables are currently known to AnyEvent: |
1216 | The following environment variables are currently known to AnyEvent: |
1217 | |
1217 | |
1218 | "PERL_ANYEVENT_VERBOSE" |
1218 | "PERL_ANYEVENT_VERBOSE" |
1219 | By default, AnyEvent will only log messages with loglevel 3 |
1219 | By default, AnyEvent will log messages with loglevel 4 ("error") or |
1220 | ("critical") or higher (see AnyEvent::Log). You can set this |
1220 | higher (see AnyEvent::Log). You can set this environment variable to |
1221 | environment variable to a numerical loglevel to make AnyEvent more |
1221 | a numerical loglevel to make AnyEvent more (or less) talkative. |
1222 | (or less) talkative. |
|
|
1223 | |
1222 | |
1224 | If you want to do more than just set the global logging level you |
1223 | If you want to do more than just set the global logging level you |
1225 | should have a look at "PERL_ANYEVENT_LOG", which allows much more |
1224 | should have a look at "PERL_ANYEVENT_LOG", which allows much more |
1226 | complex specifications. |
1225 | complex specifications. |
1227 | |
1226 | |
1228 | When set to 0 ("off"), then no messages whatsoever will be logged |
1227 | When set to 0 ("off"), then no messages whatsoever will be logged |
1229 | with the default logging settings. |
1228 | with everything else at defaults. |
1230 | |
1229 | |
1231 | When set to 5 or higher ("warn"), causes AnyEvent to warn about |
1230 | When set to 5 or higher ("warn"), AnyEvent warns about unexpected |
1232 | unexpected conditions, such as not being able to load the event |
1231 | conditions, such as not being able to load the event model specified |
1233 | model specified by "PERL_ANYEVENT_MODEL", or a guard callback |
1232 | by "PERL_ANYEVENT_MODEL", or a guard callback throwing an exception |
1234 | throwing an exception - this is the minimum recommended level. |
1233 | - this is the minimum recommended level for use during development. |
1235 | |
1234 | |
1236 | When set to 7 or higher (info), cause AnyEvent to report which event |
1235 | When set to 7 or higher (info), AnyEvent reports which event model |
1237 | model it chooses. |
1236 | it chooses. |
1238 | |
1237 | |
1239 | When set to 8 or higher (debug), then AnyEvent will report extra |
1238 | When set to 8 or higher (debug), then AnyEvent will report extra |
1240 | information on which optional modules it loads and how it implements |
1239 | information on which optional modules it loads and how it implements |
1241 | certain features. |
1240 | certain features. |
1242 | |
1241 | |
… | |
… | |
1254 | itself. |
1253 | itself. |
1255 | |
1254 | |
1256 | Note that specifying this environment variable causes the |
1255 | Note that specifying this environment variable causes the |
1257 | AnyEvent::Log module to be loaded, while "PERL_ANYEVENT_VERBOSE" |
1256 | AnyEvent::Log module to be loaded, while "PERL_ANYEVENT_VERBOSE" |
1258 | does not, so only using the latter saves a few hundred kB of memory |
1257 | does not, so only using the latter saves a few hundred kB of memory |
1259 | until the first message is being logged. |
1258 | unless a module explicitly needs the extra features of |
|
|
1259 | AnyEvent::Log. |
1260 | |
1260 | |
1261 | "PERL_ANYEVENT_STRICT" |
1261 | "PERL_ANYEVENT_STRICT" |
1262 | AnyEvent does not do much argument checking by default, as thorough |
1262 | AnyEvent does not do much argument checking by default, as thorough |
1263 | argument checking is very costly. Setting this variable to a true |
1263 | argument checking is very costly. Setting this variable to a true |
1264 | value will cause AnyEvent to load "AnyEvent::Strict" and then to |
1264 | value will cause AnyEvent to load "AnyEvent::Strict" and then to |
… | |
… | |
1316 | |
1316 | |
1317 | For example, to force the pure perl model (AnyEvent::Loop::Perl) you |
1317 | For example, to force the pure perl model (AnyEvent::Loop::Perl) you |
1318 | could start your program like this: |
1318 | could start your program like this: |
1319 | |
1319 | |
1320 | PERL_ANYEVENT_MODEL=Perl perl ... |
1320 | PERL_ANYEVENT_MODEL=Perl perl ... |
|
|
1321 | |
|
|
1322 | "PERL_ANYEVENT_IO_MODEL" |
|
|
1323 | The current file I/O model - see AnyEvent::IO for more info. |
|
|
1324 | |
|
|
1325 | At the moment, only "Perl" (small, pure-perl, synchronous) and |
|
|
1326 | "IOAIO" (truly asynchronous) are supported. The default is "IOAIO" |
|
|
1327 | if AnyEvent::AIO can be loaded, otherwise it is "Perl". |
1321 | |
1328 | |
1322 | "PERL_ANYEVENT_PROTOCOLS" |
1329 | "PERL_ANYEVENT_PROTOCOLS" |
1323 | Used by both AnyEvent::DNS and AnyEvent::Socket to determine |
1330 | Used by both AnyEvent::DNS and AnyEvent::Socket to determine |
1324 | preferences for IPv4 or IPv6. The default is unspecified (and might |
1331 | preferences for IPv4 or IPv6. The default is unspecified (and might |
1325 | change, or be the result of auto probing). |
1332 | change, or be the result of auto probing). |
… | |
… | |
2074 | AnyEvent::Impl::IOAsync, Anyevent::Impl::Irssi, AnyEvent::Impl::FLTK. |
2081 | AnyEvent::Impl::IOAsync, Anyevent::Impl::Irssi, AnyEvent::Impl::FLTK. |
2075 | |
2082 | |
2076 | Non-blocking handles, pipes, stream sockets, TCP clients and servers: |
2083 | Non-blocking handles, pipes, stream sockets, TCP clients and servers: |
2077 | AnyEvent::Handle, AnyEvent::Socket, AnyEvent::TLS. |
2084 | AnyEvent::Handle, AnyEvent::Socket, AnyEvent::TLS. |
2078 | |
2085 | |
|
|
2086 | Asynchronous File I/O: AnyEvent::IO. |
|
|
2087 | |
2079 | Asynchronous DNS: AnyEvent::DNS. |
2088 | Asynchronous DNS: AnyEvent::DNS. |
2080 | |
2089 | |
2081 | Thread support: Coro, Coro::AnyEvent, Coro::EV, Coro::Event. |
2090 | Thread support: Coro, Coro::AnyEvent, Coro::EV, Coro::Event. |
2082 | |
2091 | |
2083 | Nontrivial usage examples: AnyEvent::GPSD, AnyEvent::IRC, |
2092 | Nontrivial usage examples: AnyEvent::GPSD, AnyEvent::IRC, |
2084 | AnyEvent::HTTP. |
2093 | AnyEvent::HTTP. |
2085 | |
2094 | |
2086 | AUTHOR |
2095 | AUTHOR |
2087 | Marc Lehmann <schmorp@schmorp.de> |
2096 | Marc Lehmann <schmorp@schmorp.de> |
2088 | http://home.schmorp.de/ |
2097 | http://anyevent.schmorp.de |
2089 | |
2098 | |