iOS TCP/IP检查连接

Luc*_*ùlè 0 objective-c tcp-ip

我目前正在尝试连接到tcp服务器.一切都很好,但如果服务器不可用,应用程序冻结约30秒,这不是很好.我已经搜索了一个分辨率,但到目前为止找不到有用的东西.

也许你们中的某个人有一个检查连接的解决方案?

    CFReadStreamRef readStream;
    CFWriteStreamRef writeStream;
    CFStreamCreatePairWithSocketToHost(NULL, (__bridge CFStringRef)@"IP_SERVER_PATH", 6666, &readStream, &writeStream);
    inputStream = (__bridge NSInputStream *)readStream;
    outputStream = (__bridge NSOutputStream *)writeStream;
    [inputStream setDelegate:self];
    [outputStream setDelegate:self];
    [inputStream scheduleInRunLoop:[NSRunLoop currentRunLoop] forMode:NSDefaultRunLoopMode];
    [outputStream scheduleInRunLoop:[NSRunLoop currentRunLoop] forMode:NSDefaultRunLoopMode];
    [inputStream open];
    [outputStream open];
Run Code Online (Sandbox Code Playgroud)

小智 6

切勿在主线程上执行网络操作!使用单独的后台线程.寻找NSThread.