Здравствуйте, Gaperton, Вы писали:
G>Здравствуйте, eao197, Вы писали:
G>>Мне очень жаль, но это совершенно очевидно будет работать медленнее, чем мое решение на очередях сообщений. Потому, что у меня будет просто обычный read на каждый lookup. Я думал, еще раз тебе этого объяснять не стоит, и ты придумал что-то новенькое?
G>Ты что, не знаешь, что atomic_read заметно медленнее обычного read? Может быть, ты наконец перестанешь прикидываться валенком? Обкакался, так будь мужиком, блин, и имей смелость это признать. Тем более — это всего лишь форум, и всего знать невозможно. Я был о тебе лучшего мнения, короче.
Даже на архитектуре POWER, с одной из самых расслабленных моделей памяти на сегодняшний день, atomic_read с требуемым в данном случае упорядочиванием consume, является не более чем обычной инструкцией загрузки из памяти ld (той самой, которая десятками встречается в любой функции и занимает доли такта):
Example POWER Implementation for C/C++ Memory Model:
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2745.html
(раздел "PowerPC Code Sequences")
И точно так же, atomic_read с упорядочиванием consume является обычной инструкцией загрузки на архитектурах x86, IA-64, SPARC RMO/PSO/TSO, ARM, и на всех остальных современных архитектурах.