📄 event.c
字号:
/*inet/generic/event.cCreated: April 1995 by Philip Homburg <philip@f-mnx.phicoh.com>Implementation of an event queue.Copyright 1995 Philip Homburg*/#include "inet.h"#include "assert.h"#include "event.h"THIS_FILEevent_t *ev_head;static event_t *ev_tail;void ev_init(ev)event_t *ev;{ ev->ev_func= 0; ev->ev_next= NULL;}void ev_enqueue(ev, func, ev_arg)event_t *ev;ev_func_t func;ev_arg_t ev_arg;{ assert(ev->ev_func == 0); ev->ev_func= func; ev->ev_arg= ev_arg; ev->ev_next= NULL; if (ev_head == NULL) ev_head= ev; else ev_tail->ev_next= ev; ev_tail= ev;}void ev_process(){ ev_func_t func; event_t *curr; while (ev_head) { curr= ev_head; ev_head= curr->ev_next; func= curr->ev_func; curr->ev_func= 0; assert(func != 0); func(curr, curr->ev_arg); }}int ev_in_queue(ev)event_t *ev;{ return ev->ev_func != 0;}/* * $PchId: event.c,v 1.6 2004/08/03 16:23:32 philip Exp $ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -