Главная страница


ru.unix.bsd

 
 - RU.UNIX.BSD ------------------------------------------------------------------
 From : Dmitry Pryanishnikov                 2:464/36       04 Feb 2004  13:04:05
 To : All
 Subject : =?koi8-r?B?UmU6INPJzsjSz87J2sHDydEu?=
 -------------------------------------------------------------------------------- 
 
 
 Привет!
 
 On Wed, 4 Feb 2004, Max Khon wrote:
 
 > по приходу сигнала ставить sig_atomic_t переменную в 1, в цикле ее
 > отслеживать?
 
  Hасколько я понимаю, если, например, на C написать постановку элемента в
 хвост очереди так:
 
         /* Link at the end of list */
   tp->next=NULL;
         if (queuehead) queuetail->next = tp;
         else queuehead = tp;
         queuetail = tp;
 
 то никакими дополнительными переменными и их проверками невозможно
 гарантировать, что сигнал не "пролезет" между модификациями указателей
 головы и хвоста очереди. IMHO единставенное правильное решение - блокировать
 доставку этого сигнала при помощи sigprocmask, затем сделать с очередью все,
 что нужно, и затем деблокировать доставку сигнала вторым вызовом sigprocmask.
 
 P.S. Те, кто программировал задачки реального времени (или игрушки ;) под
 RSX-11M для PDP-11, наверняка вспомнят тамошние директивы DSAR$ / ENAR$ ).
 
 Sincerely, Dmitry
 -- 
 Atlantis ISP, System Administrator
 e-mail:  dmitry@atlantis.dp.ua
 nic-hdl: LYNX-RIPE
 --- ifmail v.2.14.os-p7
  * Origin: Atlantis ISP (2:464/36@fidonet)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 синхронизация.   Slawa Olhovchenkov   03 Feb 2004 17:29:12 
 =?koi8-r?B?UmU6INPJzsjSz87J2sHDydEu?=   Dmitry Pryanishnikov   03 Feb 2004 18:40:37 
 синхронизация.   Max Khon   04 Feb 2004 01:32:52 
 синхронизация.   Slawa Olhovchenkov   04 Feb 2004 12:31:22 
 синхронизация.   Max Khon   04 Feb 2004 17:02:14 
 синхронизация.   Slawa Olhovchenkov   04 Feb 2004 14:38:24 
 Re: синхронизация.   Lev Walkin   04 Feb 2004 15:29:30 
 синхронизация.   Slawa Olhovchenkov   04 Feb 2004 15:41:10 
 синхронизация.   Max Khon   04 Feb 2004 21:47:50 
 синхронизация.   Slawa Olhovchenkov   05 Feb 2004 12:49:18 
 синхронизация.   Max Khon   05 Feb 2004 17:51:28 
 синхронизация.   Slawa Olhovchenkov   05 Feb 2004 17:02:22 
 =?koi8-r?B?UmU6INPJzsjSz87J2sHDydEu?=   Dmitry Pryanishnikov   04 Feb 2004 13:04:05 
 синхронизация.   Slawa Olhovchenkov   04 Feb 2004 14:24:50 
 =?koi8-r?B?UmU6INPJzsjSz87J2sHDydEu?=   Dmitry Pryanishnikov   04 Feb 2004 16:02:10 
 УЙОИТПОЙЪБГЙС.   Max Khon   04 Feb 2004 21:53:18 
 =?koi8-r?B?UmU6IKqlvqubub6lgomGpZMu?=   Dmitry Pryanishnikov   05 Feb 2004 13:10:31 
 Re: синхронизация.   Valentin Nechayev   04 Feb 2004 17:45:11 
 синхронизация.   Slawa Olhovchenkov   04 Feb 2004 18:08:50 
 Re: синхронизация.   Valentin Nechayev   04 Feb 2004 19:09:04 
 синхронизация.   Slawa Olhovchenkov   04 Feb 2004 19:38:34 
 Re: синхронизация.   Valentin Nechayev   04 Feb 2004 22:10:10 
 синхронизация.   Slawa Olhovchenkov   04 Feb 2004 22:21:42 
 Re: синхронизация.   Valentin Nechayev   05 Feb 2004 10:40:49 
 Re: синхронизация.   Dmitry Miloserdov   04 Feb 2004 21:22:01 
 Re: синхронизация.   Valentin Nechayev   04 Feb 2004 22:10:11 
Архивное /ru.unix.bsd/24521404b078b.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional