Size: a a a

2020 July 27

VS

Vladimir Suisei in supapro.cxx
Я естественно про случай когда оба лока с 1 потока
источник

VS

Vladimir Suisei in supapro.cxx
Что тогда значит

If lock is called by a thread that already owns the mutex, the behavior is undefined: for example, the program may deadlock.
источник

F

Formonder in supapro.cxx
Ну тут сказано, что зависнешь)
источник

VS

Vladimir Suisei in supapro.cxx
Короче вас ребята хрен поймешь если честно
источник

AZ

Anton Z. in supapro.cxx
Vladimir Suisei
Что тогда значит

If lock is called by a thread that already owns the mutex, the behavior is undefined: for example, the program may deadlock.
Ну да, для нерекурсивного UB имеет смысл.
источник

AZ

Anton Z. in supapro.cxx
Так что, наверное, UB
источник

F

Formonder in supapro.cxx
На такой случай используй lock_guard
источник

DP

Denis Paukaev in supapro.cxx
Vladimir Suisei
Что тогда значит

If lock is called by a thread that already owns the mutex, the behavior is undefined: for example, the program may deadlock.
Тут написано вроде почти по русски что второй лок уб не?
источник

VS

Vladimir Suisei in supapro.cxx
Я уточняю
источник

VS

Vladimir Suisei in supapro.cxx
Короче понятно, если хочу лочить залоченое то нужно юзать рекурсивную версию
источник

IZ

Ilia Zviagin in supapro.cxx
Vladimir Suisei
И какое тогда поведение ожидается?
Пиздец и всё
источник

AS

Anatoly Shirokov in supapro.cxx
Vladimir Suisei
Короче понятно, если хочу лочить залоченое то нужно юзать рекурсивную версию
Не лочь, раздели интерфейс на приватный без лока, и публичный с локом. В этом случае не надо будет использовать рекурсивный.
источник

IZ

Ilia Zviagin in supapro.cxx
Vladimir Suisei
Если я два раза подряд залочу мутекс, это уб?
Ты какой мьютекс имеешь в виду? Из ос если - там нет даже понятия  UB.
Если из std - там написано.
источник

IZ

Ilia Zviagin in supapro.cxx
Vlad Doc
дедлок же
Ну вот на шинах, где мьютекс нерекурсивный по умолчанию, будет как раз дедлок. Самодедлок
источник

IZ

Ilia Zviagin in supapro.cxx
Vladimir Suisei
Короче понятно, если хочу лочить залоченое то нужно юзать рекурсивную версию
Ага
источник

IZ

Ilia Zviagin in supapro.cxx
Vladimir Suisei
Короче понятно, если хочу лочить залоченое то нужно юзать рекурсивную версию
Но вот линуксоиды говорят , что если бы в коде не знаешь для каждой строки в каком состоянии сейчас мьютекс, то код говно.
И где-то они правы...
источник

VS

Vladimir Suisei in supapro.cxx
Да я там без рекурсивных разрулил
источник

VS

Vladimir Suisei in supapro.cxx
Так что все ок
источник

IZ

Ilia Zviagin in supapro.cxx
Vladimir Suisei
Да я там без рекурсивных разрулил
Надеюсь, не счётчиком блокировок мьютекса?
источник

VS

Vladimir Suisei in supapro.cxx
Не) там в принципе мне не надо 2 раза лочить
источник