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

📄 spresponse.hpp

📁 spserver 是一个实现了半同步/半异步(Half-Sync/Half-Async)和领导者/追随者(Leader/Follower) 模式的服务器框架
💻 HPP
字号:
/* * Copyright 2007 Stephen Liu * For license terms, see the file COPYING along with this library. */#ifndef __spresponse_hpp__#define __spresponse_hpp__#include <sys/types.h>#ifdef linux#include <stdint.h>#endifclass SP_Buffer;struct evbuffer;class SP_ArrayList;class SP_MsgBlockList;typedef struct tagSP_Sid {	uint16_t mKey;	uint16_t mSeq;	enum {		eTimerKey = 0,		eTimerSeq = 65535	};} SP_Sid_t;class SP_SidList {public:	SP_SidList();	~SP_SidList();	int getCount() const;	void add( SP_Sid_t sid );	SP_Sid_t get( int index ) const;	SP_Sid_t take( int index );	int find( SP_Sid_t sid ) const;private:	SP_SidList( SP_SidList & );	SP_SidList & operator=( SP_SidList & );	SP_ArrayList * mList;};class SP_Message {public:	SP_Message( int completionKey = 0 );	~SP_Message();	SP_SidList * getToList();	size_t getTotalSize();	SP_Buffer * getMsg();	SP_MsgBlockList * getFollowBlockList();	SP_SidList * getSuccess();	SP_SidList * getFailure();	void setCompletionKey( int completionKey );	int getCompletionKey();private:	SP_Message( SP_Message & );	SP_Message & operator=( SP_Message & );	SP_Sid_t mFromSid;	SP_Buffer * mMsg;	SP_MsgBlockList * mFollowBlockList;	SP_SidList * mToList;	SP_SidList * mSuccess;	SP_SidList * mFailure;	int mCompletionKey;};class SP_Response {public:	SP_Response( SP_Sid_t fromSid );	~SP_Response();	SP_Sid_t getFromSid() const;	SP_Message * getReply();	void addMessage( SP_Message * msg );	SP_Message * peekMessage();	SP_Message * takeMessage();private:	SP_Response( SP_Response & );	SP_Response & operator=( SP_Response & );	SP_Sid_t mFromSid;	SP_Message * mReply;	SP_ArrayList * mList;};#endif

⌨️ 快捷键说明

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