|
|
ru.unix- RU.UNIX ---------------------------------------------------------------------- From : Eugene B. Berdnikov 2:5020/400 06 Jul 2001 16:25:08 To : Vladimir Dozen Subject : Re: thread or fork ? -------------------------------------------------------------------------------- Vladimir Dozen <dozen@osw.com.ru> wrote: VD> Тут все про exit(0) говорят, а я бы предпочел, чтобы источник должен VD> был бы явно делать close(1), чтобы я на своем read(0,...) получил EOF. VD> Это просто несколько шире, и применимо, например, к internet-соединениям. Для протокола tcp - сейчас никак, хотя в принципе можно ечередной бит из поля tos задействовать для статуса "imergency socket close", или устаканить какую-нибудь комбинацию типа FIN+RST, после чего еще несколько лет иметь жуткую ругань со всех сторон, как это было с ECN. VD> Кроме того, это, вероятно, легко сделать внутри ядра. Для пайпов-то? Hу-ну. Это Вы держите в голове шельные пайплайны - один писатель, один читатель. Hо это лишь частный случай использования pipe(2), само ядерное API гораздо шире. Представьте себе пайп, которые держат 3 писателя и 2 читателя. И вот кто-то из них сдох. Кому что сигналить, кому какой статус возвращать? Это должна быть проблема управляющего шелла. Я вовсе не собираюсь доказывать, что API fork/exec/dup/pipe - идеальное, но весь этот спич навеян узкоприкладными особенностями использования этого API в шеллах (точнее, недовольством Hечаева, что шеллы не делают то, что ему хочется:). -- Eugene Berdnikov --- ifmail v.2.15dev5 * Origin: Institute for High Energy Physics, Protvino, Russia (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.unix/53536781e091.html, оценка из 5, голосов 10
|