在C++中實現延時計時器可以使用以下幾種方法:
std::this_thread::sleep_for()
函數進行延時:#include <iostream>
#include <chrono>
#include <thread>
int main() {
std::cout << "Start" << std::endl;
std::chrono::seconds delay(5);
std::this_thread::sleep_for(delay);
std::cout << "End" << std::endl;
return 0;
}
std::chrono::steady_clock
實現計時器:#include <iostream>
#include <chrono>
int main() {
std::cout << "Start" << std::endl;
auto start = std::chrono::steady_clock::now();
std::chrono::seconds delay(5);
while (std::chrono::steady_clock::now() - start < delay) {
// do nothing, just wait
}
std::cout << "End" << std::endl;
return 0;
}
std::this_thread::sleep_until()
函數進行延時:#include <iostream>
#include <chrono>
#include <thread>
int main() {
std::cout << "Start" << std::endl;
auto start = std::chrono::system_clock::now();
std::chrono::seconds delay(5);
std::this_thread::sleep_until(start + delay);
std::cout << "End" << std::endl;
return 0;
}
這些方法都可以實現延時計時器的功能,具體選擇哪種方法取決于實際需求和場景。