powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Почему std::shared_lock не было в C++11, но появился в C++14?
1 сообщений из 1, страница 1 из 1
Почему std::shared_lock не было в C++11, но появился в C++14?
    #38613606
Вася Уткин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Почему std::shared_lock не было в C++11, но появился в C++14?
http://en.cppreference.com/w/cpp/header/shared_mutex

Причем, насколько я понял, будет не отдельный std::shared_mutex, а старый std::mutex, но для него отдельный лок: std::shared_lock<>

Бенчмарки бустовской реализации сильно отставали даже от обычного мьютекса: http://askldjd.wordpress.com/2011/03/06/performance-comparison-on-reader-writer-locks/

Но потом появились:
1. более грамотные реализации rw_lock в Windows slim_rw_lock / Posix rw_lock
2. аппаратная поддержка транзакционной памяти - Transactional Synchronization Extensions (TSX) в процессорах Intel начиная с Haswell, обеспечивающая оптимистический параллелизм , который как раз выгоден для частого конкурентного чтения и редкого конкурентного изменения, т.е. для rw_lock:
http://habrahabr.ru/company/intel/blog/137567/

Что из этого больше сыграло роль для появления shared_lock (1) грамотные реализации rw_lock или (2) поддержка транзакционной памяти TSX?
...
Рейтинг: 0 / 0
1 сообщений из 1, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / Почему std::shared_lock не было в C++11, но появился в C++14?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]