網絡工具包 CocoaAsyncSocket

fmms 13年前發布 | 11K 次閱讀 C語言

CocoaAsyncSocket支持tcp和udp。其中:

  • AsyncSocket類是支持TCP的
  • AsyncUdpSocket是支持UDP的

AsyncSocket是封裝了CFSocket和CFSteam的TCP/IP socket網絡庫。它提供了異步操作,本地cocoa類的基于delegate的完整支持。主要有以下特性:

  • 隊列的非阻塞的讀和寫,而且可選超時。你可以調用它讀取和寫入,它會當完成后告知你
  • 自動的socket接收。如果你調用它接收連接,它將為每個連接啟動新的實例,當然,也可以立即關閉這些連接
  • 委托(delegate)支持。錯誤、連接、接收、完整的讀取、完整的寫入、進度以及斷開連接,都可以通過委托模式調用
  • 基于run loop的,而不是線程的。雖然可以在主線程或者工作線程中使用它,但你不需要這樣做。它異步的調用委托方法,使用NSRunLoop。委托方法包括socket的參數,可讓你在多個實例中區分
  • 自包含在一個類中。你無需操作流或者socket,這個類幫你做了全部
  • 支持基于IPV4和IPV6的TCP流

AsyncUdpSocket是UDP/IP socket網絡庫,包裝自CFSocket。它的工作很像TCP版本,只不過是用于處理UDP的。它包括基于非阻塞隊列的發送接收操作,完整的委托支持,基于runloop,自包含的類,以及支持IPV4和IPV6。

項目地址:http://code.google.com/p/cocoaasyncsocket/

 本文由用戶 fmms 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!