Описание тега deadlock

Ситуация, когда две (или более) операции нуждаются в перекрывающихся наборах ресурсов, и ни одна из них не может быть завершена, поскольку они не могут получить все блокировки, необходимые для завершения операции и снятия их блокировок.
5 ответов

Получить блокировку на двух мьютексах и избежать тупика

Следующий код содержит потенциальную тупиковую ситуацию, но, по-видимому, это необходимо: чтобы безопасно копировать данные в один контейнер из другого, оба контейнера должны быть заблокированы, чтобы предотвратить изменения в другом потоке. void fo…
12 фев '10 в 03:53
0 ответов

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

Транзакция А: select * from table_a where field_a = 'A' for update; Транзакция Б: select * from table_a where field_a = 'A' for update; Если эти транзакции выполняются одновременно, может ли это привести к тупику? Ожидается, что запросы будут возвра…
30 мар '16 в 22:44
1 ответ

Приоритетная очередь в GoLang с использованием каналов

Вопрос На изображении выше - вопрос, который мне нужно решить. вот решение, которое я придумал (должно быть закодировано в Go). Я получаю ошибку тупика: fatal error: all goroutines are asleep - deadlock! goroutine 1 [chan send]: main.main() /home/k…
18 ноя '18 в 20:52
3 ответа

Почему следующий SQL Server вставляет тупик при запуске в транзакции?

В настоящее время я вставляю запись в таблицу SQL Server, а затем выбираю идентификатор автоинкремента следующим образом: (@p0 int,@p1 nvarchar(8))INSERT INTO [dbo].[Tag]([Some_Int], [Tag]) VALUES (@p0, @p1) SELECT CONVERT(Int,SCOPE_IDENTITY()) AS […
1 ответ

Добровольная транзакция MySQL InnoDB станет жертвой тупика

Есть ли в MySQL механизм (5.6 или более поздний), чтобы иметь транзакцию (или оператор), чтобы добровольно стать жертвой в случае, если она вовлечена в тупик? При обнаружении взаимоблокировки InnoDB, когда обнаружена взаимоблокировка, InnoDB определ…
11 дек '17 в 17:54
0 ответов

SQL тупик из-за индекса

У меня проблема тупика между вставкой и выделением Соединение А: Вставляет запись в таблицу MyTable (X блокировка записи) Обновляет некластеризованный индекс MyTable_Index (запрашивает X-блокировку для записи индекса) Соединение Б: Использует MyTabl…
17 фев '17 в 16:29
5 ответов

Реализация потока монитора в Java

Ну, я не знаком с потоками в Java, поэтому я имею дело с этой проблемой: у меня есть одноэлементный объект, который содержит некоторые объекты (скажем, сеансы), и каждый объект имеет продолжительность времени, так что это означает, что через некотор…
20 янв '12 в 10:42
1 ответ

Почему ffmpeg останавливается случайно в середине процесса?

ffmpeg чувствует, что это занимает много времени. Затем я смотрю на свой выходной файл и вижу, что он останавливается между 6 и 8 Мбит / с. Полностью закодированный файл составляет около 14 МБ. Почему ffmpeg останавливается? Мой код блокируется на S…
18 мар '10 в 16:37
1 ответ

Разрешить дочернему потоку вызывать делегат для родителя, когда родитель находится в состоянии соединения, ожидающего ребенка в C#

У меня есть форма, которая отвечает за создание и настройку экземпляра объекта, а затем говорит объекту идти делать свою работу. Процесс долгий, поэтому в форме есть область, где появляются сообщения о состоянии, позволяющие пользователю узнать, что…
04 мар '13 в 18:38
3 ответа

Может ли блокировка строк, созданная с помощью IN(,,,), генерировать мертвые блокировки?

Моя цель - избежать мертвых блокировок, поэтому я централизовал все блокировки в одном и том же месте, упорядочивая по имени таблицы, а затем по возрастанию идентификатора: SELECT * FROM table1 WHERE ID = 1 FOR UPDATE SELECT * FROM table1 WHERE ID =…
26 июн '14 в 16:02
1 ответ

Threadpool Deadlock: проектирование против или обнаружения

Я надеюсь, что это не слишком широко; У меня вопрос: "Как мне спроектировать сервис с несколькими пулами потоков, который не может заблокировать сам себя?". У меня есть веб-сервис, который разветвляет до сотен потоков по запросу одного пользователя …
04 фев '15 в 19:24
1 ответ

Почему я не вижу тупик (EDEADLK), когда несколько процессов блокируют один и тот же файл с помощью F_SETLKW?

Мне нужно правильно обращаться с EDEADLK. В моей программе я вижу, что оба ребенка ждут, пока родитель спит, и затем они применяют блокировку и сразу же покидают ее. Извините за мои ошибки, я испанский студент. int main(){ pid_t childpid, childpid2;…
29 дек '14 в 19:21
2 ответа

Использование спиновых вариантов в сетевой обработке

Я написал модуль ядра, который взаимодействует с перехватчиками сетевых фильтров. Хуки сетевого фильтра работают в контексте Softirq. Я обращаюсь к глобальной структуре данных "Хэш-таблица" из контекста softirq, а также из контекста процесса. Доступ…
12 окт '15 в 12:43
1 ответ

Как я могу избежать этого тупика в DevForce при использовании перехватчиков

Недавно мы начали использовать нашу бизнес-логику, которая в значительной степени опирается на DevForce, и выставлять ее через веб-API. Мы были очень осторожны, чтобы избежать проблем с потоками, гарантируя, что каждый запрос имеет свой собственный …
18 май '17 в 17:39
1 ответ

Служба WCF зашла в тупик

Ниже я описал настройки службы / клиента WCF. Когда один клиент вызывает IWCFService.Process несколько раз подряд, служба блокируется между WCFService.Process и строкой в ​​WCFService.Run, которая выполняет this.Subscribeers.ProcessingCompleted. Экз…
12 мар '12 в 18:39
1 ответ

Как мне интерпретировать сообщение о взаимоблокировке postgresql?

Я использую сервер Postgresql 9.5.2 и иногда вижу сообщение вроде: ОШИБКА: обнаружен тупик Подробно: Процесс 1234 ожидает ShareLock для транзакции 3042999324; заблокирован процессом 5678. Процесс 5678 ожидает ShareLock для транзакции 3042999328; заб…
05 янв '17 в 00:23
2 ответа

Deadlocks - блокировка и ожидание одного и того же индекса

У меня возникла тупиковая ситуация в приложении SQL Server. Я запустил SQL Profiler и поднял "граф взаимоблокировок", и это, кажется, говорит мне, что оба процесса удерживают и ожидают блокировки для одного и того же индекса первичного ключа. Причин…
23 авг '11 в 12:10
0 ответов

Обедать Философов в Яве, чтобы избежать тупика

У меня возникают проблемы с правильной работой кода Diners Philosophers. Может ли кто-нибудь помочь мне сделать эту работу? Это школьное задание, в котором мы должны попытаться реализовать " Обеденную философию" без тупика. И объясните, как мы этого…
1 ответ

System::Threading::Mutex, вызывается из несинхронизированного блока кода. Неожиданный тупик

В попытке избавить мой графический интерфейс от условий гонки и взаимных блокировок у меня есть следующая функция, которую я вызываю из c'tor, и всякий раз, когда мне нужен сервис, который разделяет мои именованные mutex предоставить свой вклад: voi…
20 окт '11 в 23:04
3 ответа

EnterCriticalSection Deadlock

Наличие, как представляется, ситуации тупиковой блокировки с многопоточным приложением регистрации. Немного предыстории: Мое основное приложение имеет 4-6 потоков. Основной поток, отвечающий за мониторинг работоспособности различных вещей, которые я…
18 фев '11 в 13:51