内存乒乓缓存机制与消息分发机制的C代码实现.pdf

内存乒乓缓存机制与消息分发机制的C代码实现.pdf

  1. 1、本文档共14页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
//**************************************************** //* 内存乒乓BUFF 机制 //*算法是,1 Buff -write,1 Buff -read,写满后反过来。 //*正常返回0 ,出错返回-1 //**************************************************** /*ping pong Buffs ID */ typedef enum{ BUFF_PING = 0, /*Ping ID 的Buff*/ BUFF_PONG = 1, /*Pong ID 的Buff*/ BUFF_PIPONUM }EN_PINGPONG_ID; /*ping pong use ststus */ typedef enum{ BUFF_WRITEABLE = 0, /*Buff 可写状态*/ BUFF_READABLE = 1 /*Buff 可读状态*/ }EN_USE_STATUS; /*buff use description*/ typedef struct _T_BUFF_USE_DES{ EN_USE_STATUS eUseStatus;/*可用状态*/ char* pcHeadAddr;/*首地址*/ unsigned int nBuffSize; /*Buff size*/ unsigned int nOffset; /*当前可用偏移*/ }T_BUFF_USE_DES; /*ping pong buff 的使用描述*/ typedef struct _T_PINGPONGBUFF_USE_DES{ EN_PINGPONG_ID eCurUseID; /*current use ID*/ T_BUFF_USE_DES tPingBuffUse[BUFF_PIPONUM];/*Ping Buff use status*//*Pong Buff use status*/ }T_PINGPONGBUFF_USE_DES; /*可读消息结构*/ typedef struct _T_MSG_REC2FILE{ //EN_PINGPONG_ID enBuffID;/*Buff ID*/ T_BUFF_USE_DES *ptBuffUse;/*Buff USE*/ REC_FILE_DESLIST *ptFileList; /*Rec File List*/ }T_MSG_REC2FILE; //**************************************************** //*实现一个简单消息队列 //**************************************************** /* Time Weight Task Process Msg type */ typedef enum{ TWT_PINGPONGBUFF_REC = 0, /*ping pong buff 记录文件消息*/ TWT_MSGTYPE_NUM }EN_TWT_MSGTYPE; /*Twt 消息结构*/ typedef struct _T_TWTMSG{ EN_TWT_MSGTYPE enMsgType;/*msg type*/ void* pvMsg;/*msg entry*/ void (*pfDestroyMsg)(void* pvMsg);/* 回收消息体的方法*/ }T_TWTMSG; #define TIMEWEIGHT_TASKQUEUE_SIZE 10 /* Helper struct to hold a

文档评论(0)

xuefei111 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档