주기적으로 특정 작업을 수행해야하며 현재 nanosleep을 사용하고 있습니다.C++ :보다 정확한 타이밍 간격
작업을 매 초 또는 매 10 초마다 실행해야합니다. 지정된 타임 아웃 작업을 할 것입니다 스레드를 만들 수
while(true)
{
doTask();
sleep();
}
월터 옵션의
주기적으로 특정 작업을 수행해야하며 현재 nanosleep을 사용하고 있습니다.C++ :보다 정확한 타이밍 간격
작업을 매 초 또는 매 10 초마다 실행해야합니다. 지정된 타임 아웃 작업을 할 것입니다 스레드를 만들 수
while(true)
{
doTask();
sleep();
}
월터 옵션의
스레드 라이브러리를 사용하여 doTask()를 처리하는 스레드를 만들 수 있습니다. 주 스레드는 잠자는 것을 계속하고 1 초 또는 10 초마다 실행됩니다.
이 작업은 QTimer와 QRunnable을 사용하여 수행 할 수 있습니다.
http://doc.qt.nokia.com/latest/qtimer.html
도크에 따르면, 해상도는 주위 대부분의 경우 1 밀리. 귀하의 필요에 따라 충분해야합니다.
C++과 아무 관련이 없습니다. OS에 따라 다릅니다. 'sleep'의 정밀도가 충분하지 않습니까? – ruslik
가능한 복제본 [C++ 교차 플랫폼 고해상도 타이머] (http://stackoverflow.com/questions/1487695/c-cross-platform-high-resolution-timer) –
내 응용 프로그램이 그리 안정적이지 않습니다. 로그 파일에서 무슨 일이 벌어지는지는 알지 못하지만 기본적으로 10 초마다 파일을 저장해야합니다. 나는 그것이 몇 시간 동안 작동하게하고 저장해야 할 파일들을 건너 뛴 것을 보았다. 무슨 일이 일어나는지 어떻게 알 수 있습니까? – Walter