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://www.codercto.com/soft/d/325.html

.NET框架程序设计

.NET框架程序设计

(美)Jeffrey Richter、(美)Francesco Balena / 李建忠 / 华中科技大学出版社 / 2004-1 / 54.00元

Microsoft.NET框架为简化开发与卫联网无缝连接的应用程序和组件提供了强大的技术支持,如ASP.NET Web窗体、XML Web服务以及Windows窗体。本书的目的在于展示.NET框架中公共语言运行库存的核心内容。全书由两位广受尊敬的开发者/作者完成,并假设读者理解面向对象程序设计的基本概念,如数据抽象、继承和多态。书中内容清楚地解释了CLR的扩展类型系统,CLR如何管理类型的行为,以......一起来看看 《.NET框架程序设计》 这本书的介绍吧!

URL 编码/解码
URL 编码/解码

URL 编码/解码

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试