none
请教 C# Socket 框架 RRS feed

  • 问题

  • 最近的项目需要用到Socket异步多线程处理,请问论坛里面的高手们,C#有没有socket方面的成熟框架可供参考啊?
    2010年2月22日 7:57

答案

  • 你好!
         .NET框架提供了专门的Socket类来处理相关的功能,具体可以参考:
    http://msdn.microsoft.com/zh-cn/library/system.net.sockets.socket%28VS.95%29.aspx
          希望对你有帮助!
    周雪峰
    2010年2月22日 10:15
    版主
  • 你好!
        实际上直接使用Socket类的情况不是很多,这个是底层类,你可以使用TcpListener,TcpClient等包装类来实现!这种需求.NET Framework的类库就可以很容易的实现.文档中已经有例子了,你可以参考一下!
    周雪峰
    2010年2月23日 2:29
    版主
  • 如果你自己不会书写简单的Socket调用框架的话,也就证明你其实并没有太多经验来灵活操控底层Socket。
    因此建议你使用其它通信方式比较好。..
    2010年2月23日 10:46

全部回复

  • 你好!
         .NET框架提供了专门的Socket类来处理相关的功能,具体可以参考:
    http://msdn.microsoft.com/zh-cn/library/system.net.sockets.socket%28VS.95%29.aspx
          希望对你有帮助!
    周雪峰
    2010年2月22日 10:15
    版主
  • 你好!
         .NET框架提供了专门的Socket类来处理相关的功能,具体可以参考:
    http://msdn.microsoft.com/zh-cn/library/system.net.sockets.socket%28VS.95%29.aspx
          希望对你有帮助!
    周雪峰

    你好,周版主,我的意思是一些开源的成熟的项目框架。就好比从服务器端接收数据的话,只要稍作修改就可以用使用,而不用自己再从头构建。缓冲区啊,线程池啊,等都已经考虑进去了的。
    2010年2月23日 2:02
  • 你好!
        实际上直接使用Socket类的情况不是很多,这个是底层类,你可以使用TcpListener,TcpClient等包装类来实现!这种需求.NET Framework的类库就可以很容易的实现.文档中已经有例子了,你可以参考一下!
    周雪峰
    2010年2月23日 2:29
    版主
  • 你好!
        实际上直接使用Socket类的情况不是很多,这个是底层类,你可以使用TcpListener,TcpClient等包装类来实现!这种需求.NET Framework的类库就可以很容易的实现.文档中已经有例子了,你可以参考一下!
    周雪峰

    你好,周版主,可能我意思表达的不够清楚。
    是这样的,我现在的项目想实现源源不断的从服务器读取数据,然后解析。当然采用的是异步多线程的方式。
    但本人的水平明显是不够的,对net类库中提供的类的使用肯定是不够火候的,所以我这样编写出来的程序肯定是不能够拿出去用的。
    所以我请问c#socket有没有成熟的开源框架例子可以使用,这样我只要做些修改就可以使用的,效果肯定比自己编写的要好的多的多。
    2010年2月23日 2:44
  • 你好!
         框架是有的,比如这个:
    http://code.msdn.microsoft.com/BESocketShell/Release/ProjectReleases.aspx?ReleaseId=398
         但是都比较复杂,你还需要学习如何使用框架,而且刚开始对框架的不熟悉很可能会给项目带来更大的风险!所以不建议你引入框架!
         你的需求不是很复杂,没有引入框架的必要,你学习框架的时间肯定要比学习几个类要多,所以我感觉还是学习一下如何使用我提到的那些类比较好!

    周雪峰
    2010年2月23日 3:14
    版主
  • 好像VS2008有WCF,微软推荐用WCF替换以前的socket 和Win Service, Web Service 什么的。。。不过我看了一下,好像WCF还是很复杂的,远比写一个Win Service, Web Service 要费劲。。。不知道是怎么想的。
    2010年2月23日 10:45
  • 如果你自己不会书写简单的Socket调用框架的话,也就证明你其实并没有太多经验来灵活操控底层Socket。
    因此建议你使用其它通信方式比较好。..
    2010年2月23日 10:46
  • 你说的框架是不是类似于delphi等一些IDE中的一些通迅的控件呀?
    用.net中Socket的类,结合多线程,能做的更灵活自如,其他这块也没有多难的,坐下来他细看一下,也就是几个小时的时间。

    山西.net俱乐部
    2010年2月23日 12:31
    版主