Цель C TCP Socket
Я пытаюсь разобраться с целевым tcp-сокетом для подключения к серверу, я использовал код из этих двух руководств: https://www.raywenderlich.com/3932/networking-tutorial-for-ios-how-to-create-a-socket-based-iphone-app-and-server и https://gist.github.com/rjungemann/446256. Я заметил, что когда я пытаюсь отправить данные, они не отправляются до тех пор, пока я не остановлю приложение (в какой момент оно получено на сервере), то же самое происходит при выполнении обоих руководств, приведенных ниже соответствующего кода:
- (void)setup {
NSURL *url = [NSURL URLWithString:host];
NSLog(@"Setting up connection to %@ : %i", [url absoluteString], port);
CFStreamCreatePairWithSocketToHost(kCFAllocatorDefault, (__bridge CFStringRef)[url host], port, &readStream, &writeStream);
if(!CFWriteStreamOpen(writeStream)) {
NSLog(@"Error, writeStream not open");
return;
}
[self open];
NSLog(@"Status of outputStream: %lu", (unsigned long)[outputStream streamStatus]);
return;
}
- (void)writeOut:(NSString *)s {
uint8_t *buf = (uint8_t *)[s UTF8String];
[outputStream write:buf maxLength:strlen((char *)buf)];
NSLog(@"Writing out the following:");
NSLog(@"%@", s);
}