The OpenNET Project / Index page

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



"Представлена 40 редакция списка самых высокопроизводительных..."
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]
Есть идеи по улучшению форума и сайта ? Пишите.
. "Представлена 40 редакция списка самых высокопроизводительных..." +/
Сообщение от AlexAT (ok), 19-Ноя-12, 21:06 
> да магические числа какя разнаца ? возми одна нить умнозает на 10
> другая на 20 результат в память.

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

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

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

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

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

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

Ответить | Правка | Наверх | Cообщить модератору

Оглавление
Представлена 40 редакция списка самых высокопроизводительных..., opennews, 18-Ноя-12, 01:15  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



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

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