Вопросы по теме 'atomicity'
Обработка транзакции: когда происходит откат?
Недавно был опубликован этот вопрос об определении того, что такое транзакция в целом контекст. Распространенный ответ на этот вопрос заключался в том, что транзакция должна быть атомарной единицей работы.
Мой вопрос связан с этой атомарностью...
2957 просмотров
schedule
11.01.2023
Какие операции в Java считаются атомарными?
Какие операции в Java считаются атомарными?
27776 просмотров
schedule
12.09.2022
как преобразовать неатомарную операцию в атомарную
Я пытаюсь понять атомарные и неатомарные операции. Относительно операционной системы, а также относительно C. Согласно странице википедии здесь
Рассмотрим простой счетчик, который могут увеличиваться разными процессами. Неатомарно
Наивная,...
13957 просмотров
schedule
10.03.2022
Сделайте объект AtomicXXX изменчивым
Я прочитал некоторую информацию о изменчивых переменных и их аналогах AtomicXXX (например, AtomicBoolean).
Но бывают ли ситуации, когда мне нужно сделать сам объект AtomicXXX изменчивым, или в этом нет необходимости?
229 просмотров
schedule
05.03.2022
Почему специализации std::atomic‹integral› не предоставляют операторы присваивания умножения и деления?
Полная специализация std::atomic для целочисленных типов предоставляет арифметические составные операторы присваивания, такие как += , -= , но не *= или /= . В стандарте это указано, но, насколько я вижу, причина не указана. Может ли...
810 просмотров
schedule
29.03.2023
Почему boost::shared_ptr использует встроенную сборку gcc для увеличения use_count вместо использования operator++?
Я читаю исходный код boost::shared_ptr и обнаружил, что он использует эту функцию для увеличения количества использований shared_ptr (счетчик ссылок):
inline void atomic_increment( int * pw )
{
//atomic_exchange_and_add( pw, 1 );...
450 просмотров
schedule
23.05.2022
Атомарность обновления MongoDb
Я обсуждал с другом MongoDb и его атомарность, и я хотел бы знать, прав ли он ... Мне сказали, что MongoDb во время обновления выполняет две атомарные операции:
удаляет существующий документ (первая атомарная операция);
и вставка нового...
2972 просмотров
schedule
22.03.2022
Что лучше: форсировать действия в основном потоке или использовать синхронизацию?
Скажем, у меня есть метод, который запускает загрузку объекта, который может быть вызван из любого потока, но я хочу убедиться, что загрузка уникальна, то есть я не буду запускать другую загрузку того же объекта, если есть уже один.
Лучше ли...
118 просмотров
schedule
02.04.2023
Множественные обновления в MongoDB с изоляцией и атомарностью
В случае, если мы хотим выполнить несколько операций обновления, будучи атомарными и изолированными в MongoDB, чтобы другие процессы или потоки не получали данные, пока они находятся в процессе. Мне известно о том, что атомарность и изоляция...
445 просмотров
schedule
25.04.2023
Clojure удаляет первый (или последний) элемент вектора внутри ref
То, что мне нужно, - это простая очередь, что-то, куда я могу ставить задачи и получать их одну за другой от рабочих (без поддержания порядка задач).
Я написал примерно так:
;; Definition
(def q (ref []))
;; Put
(defn put-in-queue [i]...
1424 просмотров
schedule
02.04.2022
Приращение AtomicInteger ведет себя не так, как ожидалось
Я читал об AtomicInteger и о том, как его операции атомарны и как эти свойства делают его полезным для многопоточности.
Я написал следующую программу, чтобы проверить то же самое.
Я ожидаю, что окончательный размер набора должен быть 1000, так...
804 просмотров
schedule
28.11.2022
QUnit несколько скриптов на одной странице, но между ними нет взаимодействия
Я очень новичок в модульном тестировании (это мой первый день работы с QUnit, и я никогда раньше не работал с какой-либо другой системой тестирования), и я немного не понимаю, как тестировать материал из нескольких файлов сценариев в одном QUnit....
199 просмотров
schedule
22.05.2023
Какие типы данных по своей сути являются атомарными
Мне было интересно, какие типы данных в Go по своей сути потокобезопасны (если есть).
Мое предположение состоит в том, что int, float и bool безопасны, а составные типы — нет.
Верны ли мои предположения?
Существуют ли разные соображения...
191 просмотров
schedule
05.12.2023
Безопасность потоков C ++ 11 атомарных контейнеров
Я пытаюсь реализовать потокобезопасный вектор STL без мьютексов. Итак, я прочитал сообщение this и реализовал оболочку для атомарных примитивов.
Однако, когда я запустил приведенный ниже код, он отобразил Failed! twice из приведенного ниже...
1092 просмотров
schedule
23.10.2022
C++11 Потокобезопасность конструкторов копирования std::atomic‹T›
У меня были проблемы с атомарным контейнером, и я увидел эту ссылку .
Есть ли причина, по которой std::atomic нельзя скопировать? Решение кажется это , где они просто передают значение T неатомарному конструктору с функцией атомарной загрузки...
2081 просмотров
schedule
13.06.2022
Что означает атомарный системный вызов?
Я знаю, что atomic обычно используется в контексте условия гонки и означает что-то вроде непротиворечивости и детерминированности результата в соответствии с многопоточностью. /многопроцессорная среда . Это нормально. Но недавно я прочитал...
1824 просмотров
schedule
09.08.2022
что такое атомарность отказа, используемая J bloch, и как она полезна с точки зрения неизменяемого объекта?
только что наткнулся на заявление ниже в пользу immutable object
Неизменяемый объект всегда имеет «атомарность отказа» (термин, используемый Джошуа Блохом): если неизменяемый объект выдает исключение, он никогда не остается в нежелательном...
3561 просмотров
schedule
05.12.2022
Переосмысление атомарных операций базы данных
Допустим, у меня есть документ
{
id: 1,
fruits: []
}
фрукты здесь выступает как НАБОР
Теперь я хочу атомарно добавить значение в массив фруктов для документа с первичным ключом = 1 ИЛИ создать такой документ, если он не...
984 просмотров
schedule
27.07.2022
использование golang atomic LoadInt32/StoreInt32 (64)
Может ли кто-нибудь показать пример, где необходимо использование таких атомарных операций. не понимаю разницы между
import "sync/atomic"
...
var sharedA int64
var sharedB *int64
...
// concurent code
tmpVarA := sharedA
tmpVarB := *sharedB
//...
1890 просмотров
schedule
12.06.2023
sqlalchemy, атомарность и вставка идентификатора
В этой статье мне нужен был ответ о том, как получить идентификатор недавно вставленной записи базы данных: sqlalchemy flush() и получить вставленный идентификатор?
Меня интересует атомарность коммитов. Например, предположим, что я зафиксировал...
149 просмотров
schedule
16.04.2023