mirror of
https://github.com/cloudwu/skynet.git
synced 2026-07-24 20:23:06 +00:00
CHECK ABORT every message dispatch
This commit is contained in:
@@ -125,9 +125,9 @@ _worker(void *p) {
|
|||||||
skynet_initthread(THREAD_WORKER);
|
skynet_initthread(THREAD_WORKER);
|
||||||
struct message_queue * q = NULL;
|
struct message_queue * q = NULL;
|
||||||
for (;;) {
|
for (;;) {
|
||||||
|
CHECK_ABORT
|
||||||
q = skynet_context_message_dispatch(sm, q, weight);
|
q = skynet_context_message_dispatch(sm, q, weight);
|
||||||
if (q == NULL) {
|
if (q == NULL) {
|
||||||
CHECK_ABORT
|
|
||||||
if (pthread_mutex_lock(&m->mutex) == 0) {
|
if (pthread_mutex_lock(&m->mutex) == 0) {
|
||||||
++ m->sleep;
|
++ m->sleep;
|
||||||
// "spurious wakeup" is harmless,
|
// "spurious wakeup" is harmless,
|
||||||
|
|||||||
Reference in New Issue
Block a user