我有以下的Objective-C代码,用于向套接字写入数据。服务器在Ubuntu上运行node.js:
NSString *url = @"anIPAddress";
CFReadStreamRef readStream;
CFWriteStreamRef writeStream;
CFStreamCreatePairWithSocketToHost(NULL, (CFStringRef)url, 9000, &readStream, &writeStream);
self.inputStream = (NSInputStream *)readStream;
self.outputStream = (NSOutputStream *)writeStream;
[self.inputStream setDelegate:self];
[self.outputStream setDelegate:self];
[self.inputStream scheduleInRunLoop:[NSRunLoop currentRunLoop] forMode:NSDefaultRunLoopMode];
[self.outputStream scheduleInRunLoop:[NSRunLoop currentRunLoop] forMode:NSDefaultRunLoopMode];
[self.inputStream open];
[self.outputStream open];
我能够连接到服务器并发送信息。然而我注意到连接在几分钟后会超时(我想大约是5分钟左右?)。如何保持这个连接处于活动状态?我知道有一个断开连接,因为如果我在终端下连接到服务器,同样的事情也会发生,我必须让连接保持活动状态。我想我的代码中也正在发生类似的事情。谢谢您的帮助!