当进行网络编程时,既可以采用MFC的CSocket类,又可以自行进行socket的程序设计。
在MFC中,已经的异步进行了处理,而且基于事件驱动,对于多用户的请求不需要建立多线程处理,只需另建立一个CSocket处理即可!而不基于CSocket类的开发,自己在多用户的请求处理上会花很大的精力,而且要建立多线程来处理。这两者的程序设计有什么功能上的区别吗?

解决方案 »

  1.   

    有区别。
    CSocket通过循环来保证接收到应该接收的数据,而自己通过socket编程,可以更自由的控制.
    如果你只作简单应用,建议使用CSocket,比较快的实现,但在资源管理、性能方面不尽如人意。
    如果希望作较复杂的应用,则还是自己通过socket编程较好。
    例子可以看MSDN上的Chatter和Chat Server。尝试用2个Chatter连接到Chat Server上,并其中一个chatter在DeBug环境下运行,在Debug环境下,控制只发送部分的MSG,试试ChatServer还能否与其他客户端通讯。
    —————————————————————————————————
    Let your soul guide you upon your way
    my qq is :131780
      

  2.   

    谢谢!
    按你的说法,如果要做服务器的程序,客户端的数目较多,就不适合采用CSocket类编写啦?