All
Смог наконец найти ответы на мои вопросы после сквозного поиска и сканирования.
Я публикую его, чтобы он помог другим, кто может столкнуться с той же проблемой.
Вопрос: действительно ли указанное выше содержание действительно для ОС AIX (особенно время ожидания соединения, время ожидания и т. Д.)? Потому что я не вижу его на страницах руководства AIX (5.1 и 5.3)
Ответ
Из большого количества поиска и некоторой помощи инженера службы поддержки AIX выяснилось, что справочные страницы соответствуют стандарту POSIX и должны быть действительны как для AIX, так и для SUSE OS.
Таким образом, это доказывает, что системный API подключения (O_BLOCK) может блокироваться в случае редких сценариев для неопределенного интервала времени ожидания
Вопрос: теперь, поскольку O_NONBLOCK не установлен, а SO_RCVTIMEO и SO_SNDTIMEO установлены на 5 секунд, это означает
а. подключиться в NON Blocking или Blocking?
б. Если блокировка, это временная блокировка или «бесконечная» временная блокировка?
с. Если оно бесконечно, как мне установить системный вызов «connect», который является O_BLOCKING с таймаутом до t сек.
Ответ
a.Если O_NONBLOCK задан для SO_RCVTIMEO и / или SO_SNDTIMEO, то он применим только для этих API, т.е. recv и send API соответственно.
б. Если для блокировки вызова используется API подключения, то да, подключение может блокировать на неопределенный интервал времени.
Ниже ссылка оказалась отличным руководством для понимания внутренних возможностей программирования сокетов.
"http://www.ibm.com/developerworks/aix/library/au-tcpsystemcalls/index.html"
Спасибо всем за то, что ответили на мой вопрос.