网络工具包 CocoaAsyncSocket
fmms 13年前
<div id="p_fullcontent" class="detail"> <p>CocoaAsyncSocket支持tcp和udp。其中:</p> <ul> <li>AsyncSocket类是支持TCP的</li> <li>AsyncUdpSocket是支持UDP的</li> </ul> <p><em><strong>AsyncSocke</strong></em>t是封装了CFSocket和CFSteam的TCP/IP socket网络库。它提供了异步操作,本地cocoa类的基于delegate的完整支持。主要有以下特性:</p> <ul> <li>队列的非阻塞的读和写,而且可选超时。你可以调用它读取和写入,它会当完成后告知你</li> <li>自动的socket接收。如果你调用它接收连接,它将为每个连接启动新的实例,当然,也可以立即关闭这些连接</li> <li>委托(delegate)支持。错误、连接、接收、完整的读取、完整的写入、进度以及断开连接,都可以通过委托模式调用</li> <li>基于run loop的,而不是线程的。虽然可以在主线程或者工作线程中使用它,但你不需要这样做。它异步的调用委托方法,使用NSRunLoop。委托方法包括socket的参数,可让你在多个实例中区分</li> <li>自包含在一个类中。你无需操作流或者socket,这个类帮你做了全部</li> <li>支持基于IPV4和IPV6的TCP流</li> </ul> <p>AsyncUdpSocket是UDP/IP socket网络库,包装自CFSocket。它的工作很像TCP版本,只不过是用于处理UDP的。它包括基于非阻塞队列的发送接收操作,完整的委托支持,基于runloop,自包含的类,以及支持IPV4和IPV6。<br /> <br /> 项目地址:<a href="/misc/goto?guid=4958189314609791942" target="_blank">http://code.google.com/p/cocoaasyncsocket/</a></p> </div>