swift - Swift 2 是否提供 native 套接字? (不算 cocoa 等的东西)

标签 swift sockets native

我最近浏览了 Swift 文档,并决定在一个项目中使用它,只是为了好玩。它与 iOS/OSX 无关,我使用的是最近发布的 Swift 2.2 的 Ubuntu 端口。

基本上,我有一个在用 C 编写的嵌入式系统上运行的 TCP 服务器。我打算编写一个 Swift 客户端来连接到它,但 Swift 似乎没有任何套接字的“ native ”实现。我在网上找到的大部分内容都使用 NSStreams,它是 Cocoa 框架的一部分(AFAIK,它独立于 Swift,仅在基于 iOS 和 OSX 的系统上可用)。

例如,在 Ruby 中,您可以像标准库中那样简单地require 'socket'TCPSocket.open(hostname, port)

我意识到我可以编写自己的 C 代码并通过 Swift 访问它,但我真的更喜欢原生解决方案(如果存在的话)。

最佳答案

只提供BSD socket API,您可以在Swift中调用这些API进行socket编程。

我强烈建议您首先使用套接字框架。

SwiftDSSocket是一个用纯 Swift 编写的框架,我积极维护这个框架。

关于swift - Swift 2 是否提供 native 套接字? (不算 cocoa 等的东西),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34158182/

相关文章:

ios - UIImageview 没有变圆

c - linux在c中跨线程连接到相同的sockaddr

c++ - 在 C++ 中设置正在运行的应用程序的当前目录

ios - 错误 : ld: warning: ignoring file libfile01. a,文件是为存档而构建的,该存档不是正在链接的架构 (armv7) : libfile01. a

swift - 循环时为空字符

ios - Realm 中主键查找的性能?

ios - 使用 NSUserDefaults 在本地存储值

php - 在 PHP 中创建一个网络服务器(没有 Apache)

Python MQTT 异常处理

mongodb - Sails-Mongo 对特定集合的 native 查询