LINUX.ORG.RU

Блокировки

 


0

1

У меня работают несколько потоков, которые взаимодействуют с двумя двунаправленными списками, создают и удаляют элементы списка. Также изменяют данные в элементах списков.(элементы этих двух списков ссылаются на элементы друг друга)
Меня интересует как правильно защитить эти данные?
Можно ли удерживать несколько спин блокировок одним процессом?
Знаю что нельзя захватывать семафор при захваченой спин блокировке, а возможно ли обратное? захват спин блокировки, при захваченном семафоре?


Можно ли удерживать несколько спин блокировок одним процессом?

Да.

Знаю что нельзя захватывать семафор при захваченой спин блокировке, а возможно ли обратное? захват спин блокировки, при захваченном семафоре?

Да.

Andrey_Utkin ★★
()

можно сколько угодно спин блокировок, но у тебя растет вероятность того, что ты за разумное время не разблокируешься.

max_lapshin ★★★★★
()

похоже это в job. стандартное решение: одна эксклюзивная блокировка + одна условная переменная

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.