Действительно ли list.h ядра Linux ориентирован на многопотоковое исполнение?

Действительно ли list.h ядра Linux ориентирован на многопотоковое исполнение?

5
задан Ryan Kohn 27 August 2012 в 20:07
поделиться

2 ответа

Нет, структура list_head не содержит блокировок, и операции ни в коем случае не являются атомарными.

Вы можете сами убедиться здесь , нет упоминания о механизмах блокировки и т. Д.

7
ответ дан 13 December 2019 в 03:45
поделиться

Просто прочтите реализацию; ответ явно НЕТ в присутствии писателей. (Многократное чтение неизменяемых данных безопасно.)

Пол МакКенни дает введение в RCU по постоянно полезному LWN, из которого вы можете почерпнуть некоторые советы по управлению потокобезопасными обновлениями связанных списков. Конечно, ваше использование может быть достаточно простым, чтобы хватило спин-блокировок.

6
ответ дан 13 December 2019 в 03:45
поделиться
Другие вопросы по тегам:

Похожие вопросы: