Вернуться   CoderX :: Forums > Основные форумы > Программинг
Войти через OpenID

Программинг Форум для тем связанных с программированием

Чат (Новых сообщений с момента вашего последнего визита нет)
Загрузка...
Задавайте ваши вопросы на форуме. Чат предназначен для небольших разговоров.
 
 
 
Опции темы Опции просмотра
Старый 22.08.2011, 01:29   #1
Местный
 
Аватар для Yegor
 
Регистрация: 05.04.2009
Сообщений: 1,436
Сказал Спасибо: 306
Имеет 122 спасибок в 98 сообщенях
Yegor пока неопределено
По умолчанию Крит секции.

Господа кто как ищет в программе взаимо-блокировки которые могут возникнуть при использовании крит секций. Есть для этого какие то специальные методы?

Например у меня в программе есть несколько потоков которые одновременно могут взаимодействуют с несколькими объектами. В каждый объекте есть свои крит секции.
Я заметил что блокировка может как правило возникнуть в следующей ситуации:

Первый поток обращается к первому объекту и использует его крит секцию.
Одновременно второй поток обращается ко второму обхекту с его крит.секц.
Первый поток пытается обратится ко второму обхекту не выходя из крит секции первого. И соответвенно ждет пока из этой к.с. выйдет второй поток.
Второй поток пытается обратится к первому объекту не выходя из к.с. второго. И соответственно все зависает на веки вечные.

Для упрощения работы с крит секциями в каждом обхекте я создал по 2 функции EnterCS и LeaveCS.
Если бы иметь возможность внутри этих функций мониторить состояние крит секций других моих объектов я мог бы хотя бы определить где и что привело к блокировке.
__________________
Продажа чистых аккаунтов 4G, L2 EU, AARu, AA EU, Aion EU, Tera RU, Tera EU (ICQ 594297609)
Продажа VK авторег аккаунтов (ICQ 594297609)
Yegor вне форума   Ответить с цитированием
 

  CoderX :: Forums > Основные форумы > Программинг



Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 07:17.

vBulletin style designed by MSC Team.
Powered by vBulletin® Version 3.6.11
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Locations of visitors to this page
Rambler's Top100

Вы хотите чувствовать себя в безопасности? чоп Белган обеспечит её!