fprintf && write

From
Denis Sotchenko (2:5020/118.112)
To
Boris Rudakov ()
Date
2003-06-08T11:39:04Z
Area
CARBON.COPY
 * Forwarded from area 'RU.UNIX.PROG'
Kак-то раз 07 Jun 03 Boris Rudakov написал(a) для меня следующее:

 BR> * FILE_FLAG_NO_BUFFERING - это самая зверская штука и требует
 BR> чтобы чтение производилось блоками строго кратными размеру
 BR> сектора и с позиции строго равной началу определенного сектора.
 BR> Если что не так - система посылает лесом.

 BR> * FILE_FLAG_WRITE_THROUGH - о котором речь и идет.

     Аналог последнего во фрюхе - флаг O_DIRECT для open().  За другие системы
не скажу, но аналоги всяко должны быть.

     Первая функция явно избыточна.  Программеру, который особо боится наделать
ошибок, достаточно написать враппер с проверкой.  Остальным оно вообще не надо.

 BR> Я, когда начал интересоваться портом софта в юниксы, спрашивал в
 BR> этой эхе нет ли чего аналогичного MSDN, где есть много обзорной
 BR> вступительной информации (иногда даже структурированной, хех).

     В случае фрюхи есть хэндбуки.  А ещё по собственному опыту - почитав годик
ру.юникс.бсд, я вьехал в тему гораздо плотнее, чем до этого, пытаясь с наскока
штурмовать доки :-)

 BR> Получается интересный вывод: нет никакого смысла в рамках одной
 BR> нити ожидать очень большого количества событий - оверхед на
 BR> служебные вычисления может превысить "порог разума".  И, как я
 BR> уже заметил выше, приложение для работы с большой загрузкой
 BR> должно иметь несколько нитей.

     Количество открытых потоков не обязательно коррелирует с уровнем нагрузки.
 Пример - IRC-сервер.  В чате может болтаться 65 человек, при этом особой
нагрузки они не создадут, да и не могут создать - их тут же выкинет за флуд.

 BR> Даже на однопроцовой системе несколько нитей позволяют тебе лучше
 BR> конкурировать с другими процессами, т.к. шедаллер оперирует нитями.

     А это от реализации зависит.  Где-то нитями, где-то процессами, где-то ещё
как-то может быть...

 BR> Итого, я считаю что ограничение WaitForMultipleObjects в 64
 BR> хэндла - совершенно оправдано.

     Большинство ограничений - 64 потока, 640 кбайт, 2000 год и т.п. являются
памятниками человеческой глупости и безответственности, не более того.

     "После меня - хоть потоп" (c) один средневековый программист

    __
 __/ /   Powered                                 [pepsi inside]
 \_\/  by MOTOROLA                               [smoking suxx]

--- rdc#lanport.ru http://rdc.lanport.ru/
 * Origin: Лес и водка - наши зелёные друзья (2:5020/118.112)