|
|
ru.unix- RU.UNIX ---------------------------------------------------------------------- From : Alexander Pevzner 2:5020/400 05 Nov 2000 17:10:17 To : Lev Serebryakov Subject : Re: Потеря сигналов -------------------------------------------------------------------------------- Hello, Lev Serebryakov! Sat, 04 Nov 2000 20:44:58 +0300 you wrote to Alexander Pevzner: LS> AP> Рано благодаришь :-) Селект тебе порекомендовали в качестве LS> AP> портабельной задержки на небольшое время: передаешь ему NULL'ы LS> AP> вместо всех 3-х fd_set'ов, а в timeout прописываешь желаемую LS> AP> задержку. А кстати, нафига тебе message queue? Используй лучше LS> AP> unix domain sockets. Они явно менее кривые, и на них можно делать LS> AP> select() :-) LS> проблема в разделении -- есть главный демон, он отстреливает детей, LS> а LS> интерфейсная программка должна ото всех получать данные и _всеми_ LS> живыми экземплярами управлять раздельно. В msgrcv() есть тип LS> сообщения. А в сокете -- кто первый прочтет, тот и получит :( Что LS> некузяво :( Ты не понимаешь. Управляющая программа должна создать сокет, и сказать на него listen(). Все детишки коннектятся туда по отдельности. В результате управляющая программа всегда может выбирать, кому из детей послать свое сообщение. То, что у тебя будет при этом болтаться лишний десяток открытых сокетов, это не большая нагрузка в масштабах системы. LS> AP> У меня такое чувство, что SysV API везде поддерживается только для LS> AP> совместимости, почти никто с ним не работает, и поэтому он толком LS> AP> не отлажен. Я наблюдал, как msgrcv() в линухе (2.2.17) не LS> AP> просыпался по SIGCHLD, причем сигнал оставался в полудоставленном LS> AP> состоянии, и если на программу в таком состоянии напустить strace LS> AP> -p, то именно в этот момент она просыпалась и получала свой LS> AP> сигнал. LS> ВОТ!!! У меня так же SIGALARM теряется!!! Тоже на линухе? И strace тоже его "проталкивал"? -- Wishes, Alexander Pevzner (pzz@pzz.msk.ru) --- ifmail v.2.15dev5 * Origin: Private Node of Alexander Pevzner (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.unix/8975e59fe0b4.html, оценка из 5, голосов 10
|