Я создаю TCP-соединение с сокетом, используя CFStreamCreatePairWithSocketToHost
, чтобы получить поток записи (я не хочу готовить какие-либо данные):
CFStreamCreatePairWithSocketToHost(NULL, (CFStringRef)host, port, NULL, &writeStream);
Это работает довольно хорошо, но из-за алгоритм nagle мои команды tcp буферизируются.Это может быть круто, но в моем случае мне нужно отправить команду как можно быстрее без каких-либо задержек.
Я нашел способ отключить эту «функцию», используя следующий найденный код здесь :
int yes = 1;
setsockopt(CFSocketGetNative(aSocket), IPPROTO_TCP, TCP_NODELAY, (void *)&yes, sizeof(yes));
, но я не могу понять, как получить действительную ссылку намоя розетка.Вы можете мне помочь?