Я попадаю в потоки C++ 11 и столкнулся с проблемой.Задержка начала потока в C++ 11
Я хочу объявить переменную потока как глобальную и начать ее позже.
Однако все примеры, которые я видел, кажется, запустить поток немедленно, например
thread t(doSomething);
То, что я хочу
thread t;
и запустить поток позже.
То, что я пытался это
if(!isThreadRunning)
{
thread t(readTable);
}
но теперь т является блок объема. Поэтому я хочу объявить t, а затем начать поток позже, чтобы t был доступен для других функций.
Спасибо за любую помощь.
Как долго вы можете ждать? – billz
'std :: this_thread :: sleep_for (std :: chrono :: milliseconds (x));' внутри потока? – Wikiii122
^или используйте 'unique_ptr < thread >' и присвойте ему новый поток в точке, где он должен начинаться. Сказанное: globals в основном не одобряются. – stijn