#include <iostream>
#include <thread>
#include <chrono>
#include <sys/time.h>
#include <stdio.h>
#include <time.h>
#include <chrono>
#include <utility>
#include <unistd.h>
using namespace std;
long dt = 1/60.0 * 1000;
void f1()
{
while (1) {
struct timeval start, end;
gettimeofday( &start, NULL );
for (int i = 0; i < 100000; i++) {
;
}
gettimeofday( &end, NULL );
long timeuse = 1000000 * ( end.tv_sec - start.tv_sec ) + end.tv_usec - start.tv_usec;
printf("time: %ld us\n", timeuse);
std::this_thread::sleep_for(std::chrono::milliseconds(dt - timeuse/1000));
}
}
int main()
{
std::thread t1(f1);
t1.detach();
sleep(100000);
}