… | |
… | |
15 | do anything to make Glib work with AnyEvent except by loading Glib before |
15 | do anything to make Glib work with AnyEvent except by loading Glib before |
16 | creating the first AnyEvent watcher. |
16 | creating the first AnyEvent watcher. |
17 | |
17 | |
18 | Glib is probably the most inefficient event loop that has ever seen the |
18 | Glib is probably the most inefficient event loop that has ever seen the |
19 | light of the world: Glib not only scans all its watchers (really, ALL |
19 | light of the world: Glib not only scans all its watchers (really, ALL |
20 | of them, wether I/O-related, timer-related or not) during each loop |
20 | of them, whether I/O-related, timer-related or not) during each loop |
21 | iteration, it also does so multiple times and rebuilds the poll list for |
21 | iteration, it also does so multiple times and rebuilds the poll list for |
22 | the kernel each time again, dynamically even. |
22 | the kernel each time again, dynamically even. |
23 | |
23 | |
24 | If you create many watchers (as in: more than two), you might consider one |
24 | If you create many watchers (as in: more than two), you might consider one |
25 | of the L<Glib::EV>, L<EV::Glib> or L<Glib::Event> modules that map Glib to |
25 | of the L<Glib::EV>, L<EV::Glib> or L<Glib::Event> modules that map Glib to |