Žinau, kad POSIX sleep(x)
funkcija priverčia programą užmigti x sekundžių. Ar yra funkcija, kuri C++ kalba priverstų programą miegoti x miliisekundžių?
Atkreipkite dėmesį, kad nėra standartinės C API milisekundėms, todėl (Unix sistemoje) turėsite pasitenkinti usleep
, kuri priima mikrosekundes:
#include <unistd.h>
unsigned int microseconds;
...
usleep(microseconds);
Norėdami išlikti nešiojami, miegui galite naudoti Boost::Thread:
#include <boost/thread/thread.hpp>
int main()
{
//waits 2 seconds
boost::this_thread::sleep( boost::posix_time::seconds(1) );
boost::this_thread::sleep( boost::posix_time::milliseconds(1000) );
return 0;
}
Šis atsakymas dubliuojasi ir jau buvo paskelbtas šis klausimas anksčiau. Galbūt ten taip pat rasite naudingų atsakymų .