Mam debugowanie problemu zakleszczenia, a stos wywołań pokazuje, że wątki oczekują na niektóre zdarzenia.Liczba ujemnych blokad sekcji krytycznej
Kod używa sekcji krytycznej jako prymitywu synchronizacji. Myślę, że jest tu pewien problem. Również debugger wskazuje na sekcję krytyczną, która jest własnością innego wątku, ale liczba blokad wynosi -2. Zgodnie z moim rozumieniem liczba blokad> 0 oznacza, że sekcja krytyczna jest zablokowana przez co najmniej jeden wątek.
Czy istnieje jakakolwiek możliwość, że patrzę na odpowiednią sekcję krytyczną, która może być przyczyną impasu.
W jakich sytuacjach krytyczna sekcja może mieć ujemną liczbę blokad?
Raymond Chen napisał właśnie post o konsekwencjach pozostawiania CS więcej razy niż wchodzenie do niego. I pierwsze trzy komentarze są warte przeczytania ... http://blogs.msdn.com/oldnewthing/archive/2009/06/19/9777996.aspx – eran