|
7 / 7 / 3
Регистрация: 19.03.2010
Сообщений: 182
|
|||||||||||
Атомарная операция17.02.2016, 17:24. Показов 1545. Ответов 9
Метки нет (Все метки)
У меня есть такой класс:
Пробовал сделать state() так:
Вообще, state_ имеет другой тип состоящий из структуры, здесь написал bool для краткости.
0
|
|||||||||||
| 17.02.2016, 17:24 | |
|
Ответы с готовыми решениями:
9
операция <<::>> Атомарная операция
|
|
15 / 9 / 12
Регистрация: 03.12.2015
Сообщений: 79
|
|
| 17.02.2016, 20:52 | |
|
Ээм... А чем вариант с мьютексом плох? Не вижу причины для падения.
Кстати, если делать std::atomic структуры, то Вы сможете только потокобезопасно читать и писать в неё целиком. У вас не будет атомарного доступа к отдельным элементам. Только выгрузка load() и использование как обычно. Если же делать атомарными элементы структуры, то действует обратное правило - отдельные эелементы будут атомарны, а вся структура нет. Насколько мне известно atomic по сути использует тот же мьютекс
0
|
|
|
7 / 7 / 3
Регистрация: 19.03.2010
Сообщений: 182
|
||||
| 18.02.2016, 09:37 [ТС] | ||||
|
И использование этого свойства после такого объявления будет как обычно в коде? Т.е. state_ == true?
0
|
||||
|
15 / 9 / 12
Регистрация: 03.12.2015
Сообщений: 79
|
||
| 18.02.2016, 10:21 | ||
|
Что значит разрушаются? Если Вы удаляете мьютекс, пока он кем-то залочен, то это может привести к чему угодно. Также если Вы внутри одного потока попробуете повторно залочить уже залоченный ранее std::mutex, то вылетит ошибка. Для решения таких проблем существует std::recursive_mutex (количество попыток залочить который внутри одного потока тоже не безгранично, кстати)
0
|
||
|
7 / 7 / 3
Регистрация: 19.03.2010
Сообщений: 182
|
|
| 18.02.2016, 10:57 [ТС] | |
|
В общем, сделал атомарной и все-равно программа падает при попытке чтения этого значения...
0
|
|
|
19500 / 10105 / 2461
Регистрация: 30.01.2014
Сообщений: 17,818
|
|
| 18.02.2016, 11:39 | |
|
0
|
|
|
7 / 7 / 3
Регистрация: 19.03.2010
Сообщений: 182
|
|
| 18.02.2016, 12:48 [ТС] | |
|
DrOffset, да, может быть. Сейчас открыл журнал windows и обнаружил, что Access violation reading location 0x00000020. Походу, указатель на объект "промахивается".
Добавлено через 1 час 3 минуты Да, атомные операции оказались вообще не нужны. Ошибка была совсем из-за другого. P.S. теперь всегда буду проверять указатели на nullptr перед использованием)
0
|
|
|
19500 / 10105 / 2461
Регистрация: 30.01.2014
Сообщений: 17,818
|
|
| 18.02.2016, 12:51 | |
|
0
|
|
| 18.02.2016, 12:51 | |
|
Помогаю со студенческими работами здесь
10
Операция (1С 7.7)
Операция $this-> Операция присваивания (=)
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
| Опции темы | |
|
|
Новые блоги и статьи
|
|||
|
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
|
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
|
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . .
а удачный момент так и не приходит.
|
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица.
Задача: зафиксировать три левых колонки в отчете.
Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
/ / . . .
|
|
Настройки VS Code
Loafer 13.04.2026
{
"cmake. configureOnOpen": false,
"diffEditor. ignoreTrimWhitespace": true,
"editor. guides. bracketPairs": "active",
"extensions. ignoreRecommendations": true,
. . .
|
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2.
Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива.
Было так:. . .
|
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2.
Задача: реализовать контроль корректности заполнения дат назначения. . .
|
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html
Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
|