… | |
… | |
57 | /* this is a bit tricky, but we can manage... */ |
57 | /* this is a bit tricky, but we can manage... */ |
58 | u->count = 0; |
58 | u->count = 0; |
59 | |
59 | |
60 | ev_set_invoke_pending_cb (EV_A, fg_invoke_pending); |
60 | ev_set_invoke_pending_cb (EV_A, fg_invoke_pending); |
61 | ev_set_loop_release_cb (EV_A, 0, 0); |
61 | ev_set_loop_release_cb (EV_A, 0, 0); |
62 | ev_loop (EV_A, EVLOOP_NONBLOCK); |
62 | ev_run (EV_A, EVRUN_NOWAIT); |
63 | loop_set_cb (EV_A); |
63 | loop_set_cb (EV_A); |
64 | |
64 | |
65 | if (!u->count) |
65 | if (!u->count) |
66 | break; |
66 | break; |
67 | } |
67 | } |
… | |
… | |
126 | |
126 | |
127 | /* yeah */ |
127 | /* yeah */ |
128 | pthread_setcanceltype (PTHREAD_CANCEL_ASYNCHRONOUS, 0); |
128 | pthread_setcanceltype (PTHREAD_CANCEL_ASYNCHRONOUS, 0); |
129 | |
129 | |
130 | ev_ref (EV_A); |
130 | ev_ref (EV_A); |
131 | ev_loop (EV_A, 0); |
131 | ev_run (EV_A, 0); |
132 | ev_unref (EV_A); |
132 | ev_unref (EV_A); |
133 | |
133 | |
134 | l_release (EV_A); |
134 | l_release (EV_A); |
135 | |
135 | |
136 | return 0; |
136 | return 0; |