… | |
… | |
80 | |
80 | |
81 | our $idle; # idle handler |
81 | our $idle; # idle handler |
82 | our $main; # main coro |
82 | our $main; # main coro |
83 | our $current; # current coro |
83 | our $current; # current coro |
84 | |
84 | |
85 | our $VERSION = 5.132; |
85 | our $VERSION = 5.14; |
86 | |
86 | |
87 | our @EXPORT = qw(async async_pool cede schedule terminate current unblock_sub); |
87 | our @EXPORT = qw(async async_pool cede schedule terminate current unblock_sub); |
88 | our %EXPORT_TAGS = ( |
88 | our %EXPORT_TAGS = ( |
89 | prio => [qw(PRIO_MAX PRIO_HIGH PRIO_NORMAL PRIO_LOW PRIO_IDLE PRIO_MIN)], |
89 | prio => [qw(PRIO_MAX PRIO_HIGH PRIO_NORMAL PRIO_LOW PRIO_IDLE PRIO_MIN)], |
90 | ); |
90 | ); |
… | |
… | |
398 | } |
398 | } |
399 | |
399 | |
400 | # use like this: |
400 | # use like this: |
401 | timeslice { |
401 | timeslice { |
402 | # The following is an endless loop that would normally |
402 | # The following is an endless loop that would normally |
403 | # monopolise the process. Sicne it runs in a timeslice |
403 | # monopolise the process. Since it runs in a timesliced |
404 | # environment, it will regularly cede to other threads. |
404 | # environment, it will regularly cede to other threads. |
405 | while () { } |
405 | while () { } |
406 | }; |
406 | }; |
407 | |
407 | |
408 | |
408 | |