使用 C++ 来实现定时器事件,可以使用 std::thread
来实现,也可以使用 std::async
来实现。
std::thread
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| #include <iostream> #include <thread>
int main() { std::thread t([]() { while (true) { std::this_thread::sleep_for(std::chrono::seconds(1)); std::cout << "Hello World!" << std::endl; } });
t.detach();
while (true) { } return 0; }
|
运行结果:
std::async
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| #include <iostream> #include <future> #include <thread>
int main() { std::function<void(int)> f = [&](int i) { std::this_thread::sleep_for(std::chrono::seconds(1)); std::cout << "Hello World!" << i << std::endl; f(i); };
std::async(std::launch::async, f, 43);
while (true) { } return 0; }
|
运行结果: