Результаты поиска по запросу "lock-free"

4 ответа

Блокировка свободных нескольких читателей одного писателя

У меня есть структура данных в памяти, которая читается несколькими потоками и записывается только одним потоком. В настоящее время я использую критический раздел, чтобы сделать этот доступ потокобезопасным. К сожалению, это приводит к блокировке ...

20 ответов

Как я могу написать структуру без блокировки?

В моем многопоточном приложении я вижу сильную конкуренцию за блокировку, которая мешает хорошей масштабируемости для нескольких ядер. Я решил использовать программирование без блокировки, чтобы решить эту проблему. Как я могу написать структуру ...

6 ответов

Возможно ли реализовать блокировку без карты в C ++

Мы разрабатываем C / S на основе сетевых приложений и обнаруживаем, что слишком много блокировок, добавляющих к std :: map, ухудшают производительность сервера. Интересно, можно ли реализовать карту без блокировки, если да, то как? Есть ли там ...

ТОП публикаций

1 ответ

Читает ли exchange или compare_and_exchange последнее значение в порядке изменения?

я читаюC ++ параллелизм в действии [http://www.manning.com/williams/]Энтони Уильямс. В разделе «Понимание непринужденного заказа»: Есть несколько дополнительных вещей, которые вы можете сказать человеку в кабинке, например: «запишите это число и ...

1 ответ

Проблема с boost :: lockfree :: queue в разделяемой памяти (boost 1.53, gcc 4.7.2 / clang 3.0-6ubuntu3)

У меня проблема с размещениемboost::lockfree::queue<<T, fixed_sized<false>, ..> в общей памяти. Мне это нужно, потому что я должен иметь возможность вставлять более 65535 сообщений в очередь, а очередь fixed_sized ограничена 65535. Следующий код ...

1 ответ

/boost/lockfree/queue.hpp: ошибка: статическое утверждение не удалось: (boost :: has_trivial_destructor <T> :: value)

Я пытаюсь заменитьboost::lockfree::queue заstd::queue в этом ...

6 ответов

Когда структуры данных без блокировки менее производительны, чем взаимные исключения (мьютексы)?

Я где-то читал (больше не могу найти страницу), что блокировка свободных структур данных более эффективна «для определенных рабочих нагрузок», что, по-видимому, подразумевает, что иногда они на самом деле медленнее или выигрыш от них может быть ...

3 ответа

ForkJoinPool останавливается во время invokeAll / join

Я пытаюсь использоватьForkJoinPool [http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/ForkJoinPool.html] распараллелить мои интенсивные вычисления процессора. Насколько я понимаю, ForkJoinPool заключается в том, что он продолжает ...

7 ответов

Блокировка и барьеры памяти

У меня есть вопрос о следующем примере кода (m_value не является энергозависимым, и каждый поток работает на отдельном процессоре) void Foo() // executed by thread #1, BEFORE Bar() is executed { Interlocked.Exchange(ref m_value, 1); } bool Bar() ...

3 ответа

Атомарные операции для двойного связанного списка без блокировки

Я пишу двухсвязный список без блокировки, основанный на следующих документах: «Эффективное и надежное восстановление памяти без блокировки на основе подсчета ссылок» Андерс Гиденстам, член IEEE, Марина Папатриантафилу, Хоакан Санделл и Филиппас ...