Обнаружение однопоточной конфигурации библиотеки средств выполнения C/C ++C++

Программы на C++. Форум разработчиков
Anonymous
Обнаружение однопоточной конфигурации библиотеки средств выполнения C/C ++

Сообщение Anonymous »

Для целей оптимизации мне нужно определить, связан ли библиотека времени выполнения C/C ++, с которой мой код настроен для однопоточного или многопоточного выполнения. Это помогает избежать ненужной синхронизации с примитивами при работе в среде времени выполнения с одним из них (например, не нужно использовать Atomic/Mutex).
Мой код будет составлен в .dll // file.
on linux с Glibc, __libc_single_threaded существует для этого.
Существует ли кроссплатформенный или специфический для компилятора способ надежно обнаружить режим потока библиотеки выполнения? ON: < /p>
  • MSVC (компилятор Windows): есть ли эквивалентный макрос или проверка? /> Количество ядер процессоров (

    Код: Выделить всё

    std::thread::hardware_concurrency()
    ).
  • Является ли у моего приложения в настоящее время активные потоки.


Подробнее здесь: https://stackoverflow.com/questions/796 ... figuration

Вернуться в «C++»