Size: a a a

2021 February 20

КП

Котеечко Пухнастиньк... in supapro.cxx
что в атомик нельзя ждать
источник

s

std::slavik in supapro.cxx
Котеечко Пухнастиньке
что в атомик нельзя ждать
при чем тут атомик
источник

КП

Котеечко Пухнастиньк... in supapro.cxx
ну как при чем?
источник

MK

Mikhail Kalugin in supapro.cxx
std::slavik
а мьютекс это не про c++ вообще
Это про потокобезопасность. Если что, в C++20 они тоже есть...
источник

КП

Котеечко Пухнастиньк... in supapro.cxx
смотри, есть допустим кусок кода который переходит в атомарный контекст
источник

КП

Котеечко Пухнастиньк... in supapro.cxx
если в этом атомарном контексте проц наткнется на примитив синхронизации irq
источник

s

std::slavik in supapro.cxx
Mikhail Kalugin
Это про потокобезопасность. Если что, в C++20 они тоже есть...
ну есть в плюсах поддержка, но вообще - это примитивы синхронизации
источник

КП

Котеечко Пухнастиньк... in supapro.cxx
то ядро сплюнет oops
источник

s

std::slavik in supapro.cxx
на другом языке даже если написана ос - мьютексы в ней все равно будут
источник

s

std::slavik in supapro.cxx
Котеечко Пухнастиньке
если в этом атомарном контексте проц наткнется на примитив синхронизации irq
честно говоря набор слов
источник

КП

Котеечко Пухнастиньк... in supapro.cxx
источник

s

std::slavik in supapro.cxx
irq - это что - прерывания? запрет прерываний?
источник

КП

Котеечко Пухнастиньк... in supapro.cxx
спинлок
источник

КП

Котеечко Пухнастиньк... in supapro.cxx
нельза запретить там прерывания
источник

КП

Котеечко Пухнастиньк... in supapro.cxx
иначе сами себя задедлочим
источник

КП

Котеечко Пухнастиньк... in supapro.cxx
как я понимаю
источник

КП

Котеечко Пухнастиньк... in supapro.cxx
тоесть стоп
источник

КП

Котеечко Пухнастиньк... in supapro.cxx
Дело в том, что спинлок может защитить нас от другого процессора, но не от нашего же — если внутри запертого спинлока случится прерывание и в прерывании процессор попробует захватить тот же спинлок, наступит клинч: до возврата из прерывания отпереть спинлок некому, а прерывание не закончится, пока спинлок не отперт.
источник

s

std::slavik in supapro.cxx
ну типа тут говорится что нельзя отключить прерывания и зависнуть
источник

s

std::slavik in supapro.cxx
скорей всего сработал вочдог какой нибудь
источник