⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 async_io.h

📁 一个功能非常全面的代理服务器源代码程序,
💻 H
字号:
#ifndef __ASYNC_IO_H__#define __ASYNC_IO_H__#define MAX_ASYNCOP		128typedef enum {    AQ_STATE_NONE,		/* Not active/uninitialised */    AQ_STATE_SETUP		/* Initialised */} async_queue_state_t;typedef enum {    AQ_ENTRY_FREE,    AQ_ENTRY_USED} async_queue_entry_state_t;typedef enum {    AQ_ENTRY_NONE,    AQ_ENTRY_READ,    AQ_ENTRY_WRITE} async_queue_entry_type_t;typedef struct _async_queue_entry async_queue_entry_t;typedef struct _async_queue async_queue_t;/* An async queue entry */struct _async_queue_entry {    async_queue_entry_state_t aq_e_state;    async_queue_entry_type_t aq_e_type;#if !USE_AUFSOPS    struct aiocb aq_e_aiocb;#endif    union {	DRCB *read;	DWCB *write;    } aq_e_callback;    void *aq_e_callback_data;    FREE *aq_e_free;    int aq_e_fd;    void *aq_e_buf;};/* An async queue */struct _async_queue {    async_queue_state_t aq_state;    async_queue_entry_t aq_queue[MAX_ASYNCOP];	/* queued ops */    int aq_numpending;		/* Num of pending ops */};/* Functions */extern void a_file_read(async_queue_t * q, int fd, void *buf, int req_len,    off_t offset, DRCB * callback, void *data);extern void a_file_write(async_queue_t * q, int fd, off_t offset, void *buf,    int len, DWCB * callback, void *data, FREE * freefunc);extern int a_file_callback(async_queue_t * q);extern void a_file_setupqueue(async_queue_t * q);extern void a_file_syncqueue(async_queue_t * q);extern void a_file_closequeue(async_queue_t * q);#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -