… | |
… | |
1021 | otherwise you might suffer from crashes or worse. The only event library |
1021 | otherwise you might suffer from crashes or worse. The only event library |
1022 | currently known that is safe to use without C<unblock_sub> is L<EV> (but |
1022 | currently known that is safe to use without C<unblock_sub> is L<EV> (but |
1023 | you might still run into deadlocks if all event loops are blocked). |
1023 | you might still run into deadlocks if all event loops are blocked). |
1024 | |
1024 | |
1025 | Coro will try to catch you when you block in the event loop |
1025 | Coro will try to catch you when you block in the event loop |
1026 | ("FATAL:$Coro::IDLE blocked itself"), but this is just best effort and |
1026 | ("FATAL:$Coro::idle blocked itself"), but this is just best effort and |
1027 | only works when you do not run your own event loop. |
1027 | only works when you do not run your own event loop. |
1028 | |
1028 | |
1029 | This function allows your callbacks to block by executing them in another |
1029 | This function allows your callbacks to block by executing them in another |
1030 | coro where it is safe to block. One example where blocking is handy |
1030 | coro where it is safe to block. One example where blocking is handy |
1031 | is when you use the L<Coro::AIO|Coro::AIO> functions to save results to |
1031 | is when you use the L<Coro::AIO|Coro::AIO> functions to save results to |