fastdo  0.6.8
eiennet::old_v1::Server< _ClientCtxClass > 模板类 参考

服务器类基础 更多...

#include <eiennet_socket.hpp>

eiennet::old_v1::Server< _ClientCtxClass > 的协作图:

Public 类型

using ClientCtxSharedPointer = winux::SharedPointer< _ClientCtxClass >
 
using StartupHandlerFunction = std::function< void(ClientCtxSharedPointer clientCtxPtr) >
 

Public 成员函数

 Server (ip::EndPoint const &ep, int threadCount=4, int backlog=0)
 构造函数1 更多...
 
virtual ~Server ()
 
virtual int run ()
 
void stop (bool b=true)
 是否停止服务运行 更多...
 
size_t getClientsCount () const
 
void onStartupHandler (StartupHandlerFunction handler)
 
void removeClient (winux::uint64 clientId)
 

Protected 成员函数

ClientCtxSharedPointer_addClient (ip::EndPoint const &clientEp, winux::SharedPointer< ip::tcp::Socket > clientSockPtr)
 
virtual void onStartup (ClientCtxSharedPointer clientCtxPtr)
 

Protected 属性

winux::uint64 _cumulativeClientId
 
bool _stop
 
winux::ThreadPool _pool
 
winux::Mutex _mtxServer
 
ip::tcp::Socket _servSock
 
std::map< winux::uint64, ClientCtxSharedPointer_clients
 
StartupHandlerFunction _startupHandler
 

详细描述

template<class _ClientCtxClass>
class eiennet::old_v1::Server< _ClientCtxClass >

服务器类基础

直接使用时,需要给定事件处理;继承时需要override相应的事件虚函数。
事件: onStartup() - 业务逻辑启动

在文件 eiennet_socket.hpp1114 行定义.

成员类型定义说明

template<class _ClientCtxClass>
using eiennet::old_v1::Server< _ClientCtxClass >::ClientCtxSharedPointer = winux::SharedPointer<_ClientCtxClass>

在文件 eiennet_socket.hpp1117 行定义.

template<class _ClientCtxClass>
using eiennet::old_v1::Server< _ClientCtxClass >::StartupHandlerFunction = std::function< void( ClientCtxSharedPointer clientCtxPtr ) >

在文件 eiennet_socket.hpp1118 行定义.

构造及析构函数说明

template<class _ClientCtxClass>
eiennet::old_v1::Server< _ClientCtxClass >::Server ( ip::EndPoint const &  ep,
int  threadCount = 4,
int  backlog = 0 
)
inline

构造函数1

参数
ep服务监听的EndPoint
threadCount线程池线程数量
backloglisten(backlog)

在文件 eiennet_socket.hpp1125 行定义.

template<class _ClientCtxClass>
virtual eiennet::old_v1::Server< _ClientCtxClass >::~Server ( )
inlinevirtual

在文件 eiennet_socket.hpp1135 行定义.

成员函数说明

template<class _ClientCtxClass>
ClientCtxSharedPointer& eiennet::old_v1::Server< _ClientCtxClass >::_addClient ( ip::EndPoint const &  clientEp,
winux::SharedPointer< ip::tcp::Socket clientSockPtr 
)
inlineprotected

在文件 eiennet_socket.hpp1193 行定义.

template<class _ClientCtxClass>
size_t eiennet::old_v1::Server< _ClientCtxClass >::getClientsCount ( ) const
inline

在文件 eiennet_socket.hpp1175 行定义.

template<class _ClientCtxClass>
virtual void eiennet::old_v1::Server< _ClientCtxClass >::onStartup ( ClientCtxSharedPointer  clientCtxPtr)
inlineprotectedvirtual

eiennet::old_v1::HttpServer 重载.

在文件 eiennet_socket.hpp1213 行定义.

template<class _ClientCtxClass>
void eiennet::old_v1::Server< _ClientCtxClass >::onStartupHandler ( StartupHandlerFunction  handler)
inline

在文件 eiennet_socket.hpp1181 行定义.

template<class _ClientCtxClass>
void eiennet::old_v1::Server< _ClientCtxClass >::removeClient ( winux::uint64  clientId)
inline

在文件 eiennet_socket.hpp1186 行定义.

template<class _ClientCtxClass>
virtual int eiennet::old_v1::Server< _ClientCtxClass >::run ( )
inlinevirtual

在文件 eiennet_socket.hpp1139 行定义.

template<class _ClientCtxClass>
void eiennet::old_v1::Server< _ClientCtxClass >::stop ( bool  b = true)
inline

是否停止服务运行

在文件 eiennet_socket.hpp1173 行定义.

类成员变量说明

template<class _ClientCtxClass>
std::map< winux::uint64, ClientCtxSharedPointer > eiennet::old_v1::Server< _ClientCtxClass >::_clients
protected

在文件 eiennet_socket.hpp1210 行定义.

template<class _ClientCtxClass>
winux::uint64 eiennet::old_v1::Server< _ClientCtxClass >::_cumulativeClientId
protected

在文件 eiennet_socket.hpp1205 行定义.

template<class _ClientCtxClass>
winux::Mutex eiennet::old_v1::Server< _ClientCtxClass >::_mtxServer
protected

在文件 eiennet_socket.hpp1208 行定义.

template<class _ClientCtxClass>
winux::ThreadPool eiennet::old_v1::Server< _ClientCtxClass >::_pool
protected

在文件 eiennet_socket.hpp1207 行定义.

template<class _ClientCtxClass>
ip::tcp::Socket eiennet::old_v1::Server< _ClientCtxClass >::_servSock
protected

在文件 eiennet_socket.hpp1209 行定义.

template<class _ClientCtxClass>
StartupHandlerFunction eiennet::old_v1::Server< _ClientCtxClass >::_startupHandler
protected

在文件 eiennet_socket.hpp1217 行定义.

template<class _ClientCtxClass>
bool eiennet::old_v1::Server< _ClientCtxClass >::_stop
protected

在文件 eiennet_socket.hpp1206 行定义.


该类的文档由以下文件生成: