|
1673 / 501 / 107
Регистрация: 17.05.2015
Сообщений: 1,519
|
|||||||||||||
[c++, winapi] ReleaseMutex with ABANDONED16.06.2020, 10:47. Показов 839. Ответов 1
Метки нет (Все метки)
Всем привет.
В документации сказано:
1. Создаю мьютекс. 2. Создаю дочерний поток. 3. Захватываю мьютекс в дочернем потоке ---> дочерний поток владелец. 4. Поток завершается, не освободив мьютекс ---> мьютекс стал брошенным 5. Выполняю ReleaseMutex в потоке main, который не является владельцем мьютекса. 6. Тем не менее, ReleaseMutex успешно отрабатывает. 7. main не является владельцем. Почему ReleaseMutex отрабатывает успешно? Документация врет? https://rextester.com/CNDM40912
1
|
|||||||||||||
| 16.06.2020, 10:47 | |
|
Ответы с готовыми решениями:
1
Package fabpot/php-cs-fixer is abandoned C++ winapi WinApi//C++ |
|
2736 / 891 / 331
Регистрация: 10.02.2018
Сообщений: 2,118
|
|
| 16.06.2020, 21:59 | |
|
Запустил у себя, результат аналогичен.
Более того, если после потока поставить ещё несколько раз ReleaseMutex, то все они возвращают TRUE. Ошибка ли это? Скорее не очень корректное описание, что сплошь и рядом в msdn. В контексте остального текста из раздела Return похоже на ошибку. Но если вырвать фразу из контекста, то она вполне корректна. Можно воспринимать "неудачу" из фразы не как возвращаемый результат работы, а как отражение сути мьютексов: чужой блок она снять не может. Вообще не вижу большого смысла проверять код возврата освобождения. Обычно вся основная логика строится на WaitFor, а там всё возвращается корректно. Представить себе какую-то полезную логику на коде возврата мьютекса мне сложно, хотя попытаться извратиться можно.
1
|
|
| 16.06.2020, 21:59 | |
|
Помогаю со студенческими работами здесь
2
WinAPI в С# winapi WinAPI WinApi Qt + WinApi Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 30.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
|
Functional First Web Framework Suave
DevAlt 30.03.2026
Sauve. IO
Апнулись до NET10.
Из зависимостей один пакет, работает одинаково хорошо как в режиме проекта
так и в интерактивном режиме. из сложностей - чисто функциональный подход.
Решил. . .
|
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2.
Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники".
В. . .
|
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии.
. . .
|
|
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2.
При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
|
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут.
https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc
Первый документ красиво выглядит, но без схемы.
Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
|
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере".
Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
|
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти".
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2.
В качестве источника данных. . .
|