Если я рассчитываю на мой системный вызов write () для записи, скажем, например, 100 байт, я всегда помещаю этот вызов write () в цикл, который проверяет, является ли возвращаемая длина той, которую я ожидал отправить, и если нет, то он увеличивает указатель буфера и уменьшает длину на величину, которая была записана.
Итак, еще раз я только что сделал это, но теперь, когда есть StackOverflow, я могу спросить вас всех, знают ли люди, когда мои записи напишут ВСЕ, что я прошу по сравнению с возвратом мне частичной записи?
Дополнительные комментарии: Ответ X-Istence напомнил мне, что я должен был отметить, что файловый дескриптор был блокирующим (т.е. не неблокирующим). Я думаю, он предлагает, чтобы единственный способ write () в дескрипторе блокирующего файла не записывал все указанные данные, это когда write () прерывался сигналом. Мне кажется, это по крайней мере интуитивно понятно ...