我将以下属性定义为:
let addr:String = "192.168.31.218"
let port :UInt16 = 8000
let timeout:Double = 5.0
var socket: GCDAsyncSocket!
var errPtr : NSError?
我称该方法为波纹管:
socket.connectToHost(addr,onPort:port,withTimeout:timeout,error:&errPtr)
xcode7提醒我:
无法使用类型为'(NSString,onPort:UInt16,withTimeout:Double,error:inout NSError?)'的参数列表调用'connectToHost'
方法签名为:
(BOOL)connectToHost:(NSString *)主机名
onPort:(UInt16)port
withTimeout:(NSTimeInterval)超时
错误:(NSError **)errPtr
奇怪的是它可以在带有swift1.2的xcode6.4中工作,但是现在我在带有swift2.0的xcode7中对其进行了升级。发生上述错误。
最佳答案
尝试这个!!
do {
try socket.connectToHost(addr, onPort: port, withTimeout: timeout)
} catch let e {
print(e)
}
对我有用(Xcode:7或更高版本,CocoaAsyncSocket:7.4.2)