Форум программистов, компьютерный форум, киберфорум
Наши страницы

Корректно убить поток - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Заполнять в одиннадцати процессах массивы случайными числами http://www.cyberforum.ru/cpp/thread1555788.html
Создать программу, состоящую из 11 процессов. Каждый процесс, кроме 0, должен с генерировать массив целых случайных чисел из 1000 элементов, в промежутке от 0 до 1000. Используя операции...
C++ WMPI - функции коллективного обмена в MPI . Производные типы в MPI помогите пожалуйста - вот задание: Разработать программу, создающую MPI - тип данных C- структуры (long a; unsigned char b; float c ) и передает по помощью функций коллективного обмена экземпляр... http://www.cyberforum.ru/cpp/thread1555764.html
C++ Обработка исключений OpenSSL
Здравствуйте, не нашел в документации к OpenSSL как осуществлять обработку ошибок в нем, например при использовании функции COMP_expand_block, в случае подачи не верных данных(например подача не...
C++ Фильтры в ffmpeg: нужно ли отдельными функциями заполнять AVFilterContext?
Здравствуйте. В интернете в статье программирования на базе ffmpeg приводился пример с использованием функция для заполнения AVFormatContext использовалось avformat_open_input , AVCodecContext...
C++ Работа с OpenCV, нахождение параметров обьектов http://www.cyberforum.ru/cpp/thread1552777.html
Здравствуйте, Мне нужно сделать один проект по учебе, речь идет о програмированнии одной программки. Задача следующая: в распоряжении у меня индустриальная камера и лазер, нужно 'сделать', прибор...
C++ Прекращает читать fstream после ~17000 байт Такая проблема... Я написал программу, которая считывает формат ico, сохраняет заголовок (62 байта) в структуру, и затем отрисовывает в консоли пиксели по 4 байта (RGB, Alpha). Но после отрисовки... подробнее

Показать сообщение отдельно
Убежденный
Ушел с форума
Эксперт С++
15701 / 7211 / 1139
Регистрация: 02.05.2013
Сообщений: 11,637
Записей в блоге: 1
Завершенные тесты: 1
28.10.2015, 09:57
Цитата Сообщение от nmcf Посмотреть сообщение
А разве memory_order_relaxed к Intel процессорам применим?
Memory_order определяет семантику доступа к atomic в терминах модели памяти C++,
а не в терминах конкретных архитектур типа Intel, ARM и т.п. Т.е. если я пишу:
C++
1
AtomicVar.store(0x123, std::memory_model_relaxed);
то компилятор должен обеспечить для AtomicVar только атомарность записи 0x123 и все,
ни о возможном переупорядочивании, ни о других побочных эффектах ему заботиться не нужно
(я немного упрощаю, т.к. какие-то дополнительные требования к relaxed все же есть,
знатоки C++11 подскажут). При этом вполне возможно, что процессорная архитектура, на
которой выполняется данный код, вообще свободна от таких побочных эффектов.

Цитата Сообщение от nmcf Посмотреть сообщение
Там же вроде бы никакого relaxed и не бывает, процессор сам синхронизирует выполнение.
Это не совсем так.
На Intel (x86 и x64, про Itanium отдельная история) операции store-load могут выполняться
процессором в обратном порядке. Кроме того, запись в память одним процессором может
некоторое время быть не видна другим процессорам из-за store buffers.
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru