ios - 为什么使用dispatch_async()方法时AsyncSocket无法连接到主机?

标签 ios sockets asyncsocket dispatch-async

当使用dispatch_async方法使用AsyncSocket时,我有些困惑。
这是我的代码

dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
    _socket = [[AsyncSocket alloc] initWithDelegate:self];
    [_socket connectToHost:@"192.168.1.122" onPort:9501 error:nil];
    [self sendCurrentLocation];
});

我使用此代码进行连接,但没有成功,未调用- (void)onSocket:(AsyncSocket *)sock willDisconnectWithError:(NSError *)err事件。
有人知道为什么吗?谢谢。

p.s.原谅我的英语。

最佳答案

AsyncSocket数据传输是异步的,它将数据放置在队列中,使用线程发送,因此我们不需要再次异步进行。

关于ios - 为什么使用dispatch_async()方法时AsyncSocket无法连接到主机?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29738663/

相关文章:

ios - 我想像 Instagram 一样播放视频(如果没有视频则显示图像)?

ios - 如何更改 viewDidLoad 上选定段索引的色调? (基于教程)

python - 为什么在 python 中对 asyncio 服务器的多个请求的时间会增加?

objective-c - 全局套接字启动(AsyncSocket)

ios - 快速命名空间

ios - WKWebView 在 acceleratedAnimationDidStart 中崩溃

PHP 将 ssh2_shell() 与 socket_select() 结合使用

java - 如何创建仅在本地主机上服务的 Java Socket 对象?

python - 为什么我在 Python 中收到错误 "connection refused"? ( socket )

ruby - 带有nio4r select循环的Ruby套接字