Вопросы с тегом 'atomicity'
При параллельном программировании операция (или набор операций) является атомарной, линеаризуемой, неделимой или бесперебойной, если она появляется в остальной части системы мгновенно. Атоматичность - это гарантия изоляции от параллельных процессов. Кроме того, атомарные операции обычно имеют определение "преуспевать или неудачно" - они либо успешно изменяют состояние системы, либо не имеют видимого эффекта.
4
Является ли файл append атомарным в UNIX?
В общем, что мы можем считать само собой разумеющимся, когда добавляем к файлу в UNIX из нескольких процессов? Возможно ли потерять данные (один процесс перезаписывает другие изменения)? Возможно ли, чтобы данные были искалечены? (Например, каждый пр...
20 июл. '09 в 16:07
4
назначение ссылок атомарно, поэтому почему Interlocked.Exchange(ref Object, Object) необходимо?
В моей многопоточной веб-службе asmx у меня было поле класса _allData моего собственного типа SystemData, которое состоит из нескольких List<T> и Dictionary<T>, помеченных как volatile. Системные данные (_allData) обновляются раз в то вр...
03 февр. '10 в 13:23
6
Когда мне действительно нужно использовать atom <bool> вместо bool?
Является ли atomic<bool> избыточным, потому что bool является атомарным по своей природе? Я не думаю, что возможно иметь частично измененное значение bool. Когда мне действительно нужно использовать atomic<bool> вместо bool?
01 мая '13 в 15:12
3
Какие операции в Java считаются атомными?
Какие операции в Java считаются атомными?
21 янв. '11 в 7:49
5
Является ли rename() атомарным?
Я не могу проверить это с помощью экспериментов и не могу собрать это со страниц руководства. Скажем, у меня есть два процесса, один перемещает (переименовывает) файл1 из каталога1 в каталог2. Скажем, другой процесс, выполняющийся одновременно, коп...
14 авг. '11 в 3:38
4
Как выполняются атомные операции на аппаратном уровне?
Я получаю, что на уровне ассемблера архитектуры набора инструкций обеспечивают операции сравнения и свопинга и аналогичные операции. Однако я не понимаю, как чип может предоставить эти гарантии.
Как мне кажется, выполнение инструкции должно
Получи...
07 февр. '13 в 18:13
8
Выбирать несколько значений из структуры данных Redis атомарно?
Существует ли структура данных Redis, которая позволила бы атомизировать работу с popping (get + remove) несколькими элементами, которые она содержит?
Известны SPOP или RPOP, но они всегда возвращают одно значение. Поэтому, когда мне нужны первые N ...
16 дек. '13 в 21:58
3
Django - откат с транзакцией Atom
Я пытаюсь создать представление, в котором я сохраняю объект, но я хотел бы отменить его, если будет создано какое-то исключение. Это то, что я пробовал:
class MyView(View):
@transation.atomic
def post(self, request, *args, **kwargs):
...
11 янв. '16 в 20:22
4
Является ли определение оператора "switch" безопасным для потоков?
Рассмотрим следующий пример кода:
class MyClass
{
public long x;
public void DoWork()
{
switch (x)
{
case 0xFF00000000L:
// do whatever...
break;
case 0xFFL:
...
11 июл. '11 в 8:38
2
Haskell: Как работает "atomicModifyIORef"?
Может кто-нибудь объяснить, как работает atomicModifyIORef? В частности:
(1) Дождаться блокировки или оптимистично попытаться повторить попытку, если есть конкуренция (например, TVar).
(2) Почему подпись atomicModifyIORef отличается от подписи modi...
11 апр. '12 в 9:01
5
Атомные свойства vs потокобезопасные в Objective-C
В большинстве обсуждений, которые я прочитал, это указывает на то, что создание атома атома не гарантирует его потокобезопасности, оно просто гарантирует, что возвращаемое значение не будет мусором в результате записи одного объекта в он и другой пыт...
13 янв. '14 в 18:19
5
Избегайте дублирования POST с REST
Я использую POST в REST API для создания объектов. Время от времени сервер будет создавать объект, но клиент будет отключен, прежде чем получит ответ 201 Created. Клиент видит только неудачный запрос POST и повторяет попытку позже, и сервер с радост...
01 мар. '13 в 13:46
2
сравнивать и свопировать vs test и устанавливать
Может ли кто-нибудь объяснить мне работу и различия вышеперечисленных операций в многопоточности?
07 сент. '10 в 14:03
3
std:: atomic <int> декремент и сравнение
В следующем коде:
std::atomic<int> myint; //Shared variable
//(...)
if( --myint == 0) {
//Code block B
}
Возможно ли, что более одного потока обращается к блоку, который я назвал "Code Block B"?
Пожалуйста, учтите, что переполнение не п...
26 окт. '11 в 18:47