Под новый год возник следующий вопрос :)Открыт один kqueue() и доступен двум разным нитям. Почему когда одна нить ждет ответа от kevent(), а другая вносит изменения, внесенные изменения не доступны в первой нити до перезапуска kevent?
а что вы имеете ввиду под перезапуском?
>а что вы имеете ввиду под перезапуском?
Очевидно он имеет в виду что если в одном потоке уже вызван kevent(2) и находится в состоянии ожидания, то пока он не вернется и не будет вызван снова, то изменений не получит.
Так ли это?
>>а что вы имеете ввиду под перезапуском?
>
>
>Очевидно он имеет в виду что если в одном потоке уже вызван
>kevent(2) и находится в состоянии ожидания, то пока он не вернется
>и не будет вызван снова, то изменений не получит.
>Так ли это?
какое старое сообщение подняли :)
да, я писал об этом.оказывается, что если другой поток вносит изменения ADD, то для вступления изменений в силу перезапуска не нужно, а если изменение ENABLE - перезапуск необходим.
>оказывается, что если другой поток вносит изменения ADD, то для вступления изменений
>в силу перезапуска не нужно, а если изменение ENABLE - перезапуск
>необходим.Хмм... Это баг или фича такая?
>>оказывается, что если другой поток вносит изменения ADD, то для вступления изменений
>>в силу перезапуска не нужно, а если изменение ENABLE - перезапуск
>>необходим.
>
>Хмм... Это баг или фича такая?черт его знает :)
дока молчит на этот счет.
>черт его знает :)
>дока молчит на этот счет.
Больше похоже на баг. Хотя, а на какой системе конкретно проверялось? uname -r?
>>черт его знает :)
>>дока молчит на этот счет.
>Больше похоже на баг. Хотя, а на какой системе конкретно проверялось? uname
>-r?проверялось на:
5.4-release
6.0-release