TCP/UDP服务程序框架 light-server-frame

码农软件 · 软件分类 · 网络工具包 · 2019-02-28 15:13:02

软件介绍

 

一个基于C++开发的简单易用的服务器程序编写框架。通过多线程异步方式处理从客户端发来的消息。

(还未完成,只有部分实现,并且希望能引入更好的内存分配机制)

使用templete,可自由为server提供socket连接方式、消息处理方式。

 

主要特点:

  • 可处理字符串类消息或二进制类消息,字符串类消息可指定尾字符,自动分割出完整的消息体
  • 消息处理可通过模板扩充
  • 通过线程池处理消息,处理消息的类从基类继承。

 

这是一个简单但完整的回显服务器代码示例:

class CEchoTask
       
:public CStrMsgTaskBase
{
   
void DoAcceptSocket(int nSocket, string strClientIP)
   
{
        printf
("new client connected: %s\n", strClientIP);
   
}

   
int ProcessMessage(int nSocket, string strClientIP, string strMsg)
   
{
        printf
("recv msg:%s\n", strMsg.c_str());
       
//echo
        send
(nSocket, (void *)strMsg.c_str(), strMsg.length());
       
return 0;
   
}
   
};

int main(int argc, _TCHAR* argv[])
{
       
//create server
       
CServer<CEchoTask, CStrMsgProcessor> *pEchoServer = new CServer<EchoTask,     CStrMsgProcessor>("0.0.0.0", 6000);

       
//set string message tail
       pEchoServer
->SetMsgTail("\r\n", 2);

       
//start server
        pEchoServer
->Start();

       
//main loop
       
while(1)
       
{
               
//do something
               
Sleep(10000);
       
}
       
       
//stop server
        pEchoServer
->Stop();
       
//delete server
       
delete pEchoServer;
       
return 0;
}

本文地址:https://codercto.com/soft/d/325.html

逆袭大学

逆袭大学

贺利坚 / 人民邮电出版社 / 2014-3 / 49.00

《逆袭大学——传给IT学子的正能量》以作者近二十年的从教经历和义务为IT学子解答咨询的工作为基础,以认识专业为起点,以编程能力的提高为关键,帮助计算机类专业的大学生更新学习观念、重塑学习品质、培养学习方法,找到自己的大学之路。书中直接解答了学无用处论、专业兴趣、考研、职场等诸多大学生面临的典型困惑。 本书主要面向在校计算机类(包括软件工程、网络工程等)专业高校学生,也能让非计算机类专业的高校......一起来看看 《逆袭大学》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

在线进制转换器
在线进制转换器

各进制数互转换器

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码