Я занимался исследованием этой темы, но ничего не нашел.
У меня есть код, в котором я зацикливаю функцию, которая каждый раз находится в другом потоке (std::vector<std::shared_ptr<std::thread>>
).
Система работает правильно, но внутри этой функции я должен задать конкретное значение переменной среды для каждого потока, и зная, что std::thread
, даже если он работает независимо, среда хоста является общей,невозможно установить для этой переменной среды независимое значение (если я использую setenv()
, она изменяется на все потоки).
К сожалению, из-за характера моих потребностей я не могу решить проблему с помощью мьютекса.
Итак, это мой вопрос.Существует ли какая-либо конкретная библиотека потоков (или скрытый параметр в std::thread
или boost), который позволяет мне устанавливать потоки, поддерживающие разные переменные окружения для каждой из них?.
Спасибо