#include #include #include #include int wait_a_while (int microseconds) { int num_times = 0; auto end_time = std::chrono::system_clock::now() + std::chrono::microseconds(microseconds); while (1) { num_times++; auto wait_time = end_time - std::chrono::system_clock::now(); std::this_thread::sleep_for(wait_time); if (std::chrono::system_clock::now() > end_time) break; } return num_times; } int main (int argc, char **argv) { printf ("stop here in main.\n"); int num_times = wait_a_while (argc * 1000); printf ("Done, took %d times.\n", num_times); return 0; }