The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Представлена 40 редакция списка самых высокопроизводительных..."
Отправлено AlexAT, 19-Ноя-12 21:06 
> да магические числа какя разнаца ? возми одна нить умнозает на 10
> другая на 20 результат в память.

И зачем? Ирреал кейс.

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

Если нас интересует, чтобы при этом читатели смогли работать быстро, и не критична последовательность чтения-записи - лучше всего RCU.

Читаем старое значение (входим в критическую секцию читателя RCU), умножаем, пишем новое значение отдельно, заменяем поинтер на новое значение. "Старые" читатели, которые выполняются в этот момент - видят 10, новые, которые успеют запуститься - 20.

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

Но для точного приложения надо знать реальный юзкейс, а вот так "один тред - 10, другой - 20" - это слишком абстрактно.

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру