… | |
… | |
2083 | _schedule () |
2083 | _schedule () |
2084 | PROTOTYPE: @ |
2084 | PROTOTYPE: @ |
2085 | CODE: |
2085 | CODE: |
2086 | { |
2086 | { |
2087 | static int incede; |
2087 | static int incede; |
2088 | fprintf (stderr, "_schedule\n");//D |
|
|
2089 | |
2088 | |
2090 | api_cede_notself (); |
2089 | api_cede_notself (); |
2091 | |
2090 | |
2092 | ++incede; |
2091 | ++incede; |
2093 | while (coro_nready >= incede && api_cede ()) |
2092 | while (coro_nready >= incede && api_cede ()) |
… | |
… | |
2096 | sv_setsv (sv_activity, &PL_sv_undef); |
2095 | sv_setsv (sv_activity, &PL_sv_undef); |
2097 | if (coro_nready >= incede) |
2096 | if (coro_nready >= incede) |
2098 | { |
2097 | { |
2099 | PUSHMARK (SP); |
2098 | PUSHMARK (SP); |
2100 | PUTBACK; |
2099 | PUTBACK; |
2101 | fprintf (stderr, "call act %d >= %d\n", coro_nready, incede);//D |
|
|
2102 | call_pv ("Coro::AnyEvent::_activity", G_DISCARD | G_EVAL); |
2100 | call_pv ("Coro::AnyEvent::_activity", G_DISCARD | G_EVAL); |
2103 | SPAGAIN; |
2101 | SPAGAIN; |
2104 | } |
2102 | } |
2105 | |
2103 | |
2106 | --incede; |
2104 | --incede; |