Результаты поиска по запросу "deadlock"

0 ответов

Я бы использовал механизм Monitor для достижения приостановки и возобновления потоков. Monitor.Wait заставит поток ждать Monitor.Pulse.

м приложении я выполняю чтение моего файла другим потоком (кроме этого потока с графическим интерфейсом). Есть две кнопки, которые приостанавливают и возобновляют поток соответственно. private void BtnStopAutoUpd_Click(object sender, EventArgs ...

3 ответа

Наш код многопоточный, и этот подход работает хорошо.

у расширение Python на C ++, упаковывая стороннюю библиотеку, которую я не контролирую. Эта библиотека создает поток, о котором Python ничего не знает, и из этого потока вызывает обратный вызов C ++, который я предоставляю библиотеке. Я хочу, ...

1 ответ

 и, возможно,

ользую stackwalk64 для генерации трассировок стека для C ++ в Visual Studio 2008, используя последние версии symchk.exe и dbghlp.dll. Это работает нормально, когда я запускаю автономный exe. Однако, когда отладчик подключен, я захожу в тупик ...

ТОП публикаций

3 ответа

Мне довольно удобно работать с многопоточностью, но я думаю, я просто никогда не осознавал, что блокировки C # являются повторными. Спасибо за ответ...

исал тест того, что, по моему мнению, должно быть обоснованным для тупика. Похоже, что когда-тоlock был получен экземпляром класса a, этому экземпляру не нужно повторно приобретатьlock больше, даже если я явно пытаюсь вызвать другой метод, ...

5 ответов

В Java нет простого способа передачи определенных флагов в CreateFile (если вы не делаете кучу JNI).

аюсь обеспечить связь между приложением C # и приложением Java в Windows, используя именованные каналы с помощью метода, описанного v01ver в этом вопросе: Как открыть именованный канал Windows из ...

3 ответа

Предполагается, что pthread_cond_wait () блокирует мьютекс при возврате, и это могло произойти, но окончательная разблокировка не прошла, так как мы принудительно отменили поток. В целях безопасности я обычно стараюсь вообще не использовать pthread_cancel (), поскольку некоторые платформы даже не поддерживают это. Вы можете использовать изменчивый bool или атомарный и проверить, должна ли нить быть закрыта. Таким образом, мьютексы также будут обрабатываться чисто.

я проблема с pthreads, где я думаю, что захожу в тупик. Я создал очередь блокировки, которая, как мне показалось, работала, но после некоторого тестирования я обнаружил, что если я пытаюсь отменить несколько потоков, которые блокируют блокирующую ...

7 ответов

В дополнение к ответам здесь, еще одна вещь, которую вы могли бы найти полезным при программировании потоков в целом, - это убедиться, что ваш dev-блок является многопроцессорной машиной, в частности взаимоблокировки (обычно) воспроизводятся гораздо надежнее.

жный дубликат: C # /. NET инструмент анализа, чтобы найти условия гонки / взаимоблокировки [https://stackoverflow.com/questions/2379610/c-net-analysis-tool-to-find-race-conditions-deadlocks] Я отлаживаю приложение, которое, как я подозреваю, ...

6 ответов

Дедлок в WinForms, который предотвращается нажатием правой кнопки мыши на панели задач

Я столкнулся со странной проблемой с нашим приложением Windows C # / .NET. На самом деле это приложение с графическим интерфейсом, моя работа - это сетевой компонент, включенный в сборку.Я не знаю код основного приложения / приложения ...

3 ответа

В большинстве случаев это происходит из-за того, что читатель пытается установить общую блокировку для ресурса, заблокированного исключительно автором.

предложения о том, как отлаживать и устранять проблемы взаимоблокировок в базе данных SQL Server 2000. Мне было рекомендовано использовать флаги трассировки 1024 и 3605, которые, как я обнаружил, дают мне следующее: 1024 - этот флаг трассировки ...

3 ответа

Согласитесь с @ davidk01, что это не тупик. И это, конечно, не «классический» пример, если бы он был. Просто для дополнительной информации, даже без запуска потока, вызов метода в java, который синхронизирован с той же блокировкой, которую уже удерживает поток, не будет блокироваться, так как вызывающая сторона уже владеет блокировкой.

оложим, я выполняюsynchronized блок кода внутри некоторого потока и внутриsynchronized block Я вызываю метод, который порождает другой поток для обработки синхронизированного блока кода, который требует такой же блокировки, как и первый метод. ...