Files

21 lines
779 B
C
Raw Permalink Normal View History

2026-05-28 08:48:01 +08:00
typedef struct _task_t {
int conn_sock; //客户连接socket
int hit; //第几个客户
} task_t;
typedef struct {
task_t *taskp; /* Buffer array */
int cnt; /* Maximum number of cell */
int inpos; /* buf[inpos] is first available cell */
int outpos; /* buf[outpos] is fist item */
sem_t mutex; /* Protects accesses to socks */
sem_t avail; /* Counts available cells */
sem_t ready; /* Counts ready items */
} task_line_t;
/* task line wrapper functions */
void task_line_init(task_line_t *tlp, int n);
void task_line_deinit(task_line_t *tlp);
void task_insert(task_line_t *tlp, task_t item);
task_t task_remove(task_line_t *tlp);