Мы разрабатываем кроссплатформенное сетевое приложение, которое должно отправлять и получать данные по TCP. В Linux мы используем select()
для ожидания отправки и получения, чтобы убедиться, что сокет готов. Однако в OSX выбор для чтения занимает абсурдное время для возврата - более 20 секунд. select()
не истекает время ожидания - наше время ожидания составляет 60 секунд, и данные возвращаются, это просто смехотворно медленно. Это происходит только для чтения, а не отправки. С сетью все в порядке (опять же, у машины linux в той же сети, похоже, нет таких же проблем).
Кто-нибудь знает о каких-либо предостережениях, использующих программирование сокетов в OSX?