最近有个项目其中有一部分是CS架构,需要用到Socket网络编程,于是找来相关的书籍看了一下。
    Windows操作系统中集成了对很多套接字I/O模型的支持,特别从NT开始加入了完成端口(Completion Port)模型。如果应用程序需要同时管理大量的客户端套接字,采用这种模型可以达到最佳的系统性能,所以就想用完成端口来封装一个网络通信模块。
    网络通信模块应该作为一个基础模块来为CS间的交互而服务,那么作为该功能模块的Client而言,希望该功能模块提供了哪些方法呢?
    1、SetParameter(...);                      //port,backlog,max connections etc
    2、StartUp();  
    3、Stop();
    4、CallBackSomeConnected;            //CallBack when some connected;  
    5、Receive(...);                              //Post a receive request;
    6、CallBackDataReceived;               //CallBack when received data;
    7、Send(...);                                //Post a send request;
    8、CallBackDataSent;                    //CallBack when sent data
    9、CallBackSomeDisconnected;      //CallBack when some disconnected;
    10、ShutDown(Socket sock);        //Shut down the connection to which you want;
    只是一般性的应用的话,这些应该就够了吧。在VC的环境下把它封好,发布成DLL,在Win32或者.Net托管环境下都可以使用。

相关文章:

  • 2021-06-27
  • 2022-12-23
  • 2021-10-10
  • 2021-12-05
  • 2021-10-11
猜你喜欢
  • 2021-11-01
  • 2021-09-09
  • 2021-06-24
  • 2022-12-23
  • 2021-05-26
相关资源
相似解决方案