Функции WaitForSeconds в cpp - PullRequest
       3

Функции WaitForSeconds в cpp

1 голос
/ 19 января 2020

Есть ли в C ++ функция, которая задерживает выполнение функции на некоторое время, аналогично WaitForSeconds в C#? Я знаю о Сне, но это останавливает всю программу, я хочу приостановить только одну функцию.

Ответы [ 2 ]

2 голосов
/ 19 января 2020

Это зависит от архитектуры вашей программы: если вы позволите функции запускаться в своем собственном потоке, тогда да, вы можете использовать функцию std :: this_thread :: sleep_for, чтобы приостановить эту функцию, не затрагивая всю программу, например

void mythread()
{
  int sum = 0;
  for(int i = 0; i < 10; ++i)
  {
    std::this_thread::sleep_for(1s);
    sum += i;
  }
  return sum;
}

int main()
{
  std::future<int> result = new std::async(mythread);
  // do something else
  // ...
  result.get();
}
0 голосов
/ 19 января 2020

** Вы можете использовать функцию delay () *

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...