Waitable timers sur linux
Salut tlm,
J'ai un code win32 à porter sur linux. Ds le code il a des timers avec les des waitables timers de l'api win32. Qqun pourrait me dire sil ya un equivalent de ces timers sur linux (eventuellement des fcts createwaitbletimer etc..) ? comment lancer un timer non bloquant et le reseter ?
Voila un bout de code ou ya les timers :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
|
VOID APIENTRY DLMSi_TimerITO(PVOID lpArg, DWORD dwTL, DWORD dwTH)
{
/* Corps du thread */
}
DWORD WINAPI DLMSi_ITOThread(LPVOID pParam) // thread timer
{
LARGE_INTEGER li;
LONG lPeriod;
DWORD wMsg;
lPeriod = 60000;
li.QuadPart = -(LONGLONG)lPeriod * 10000;
DLMS_mEventRecv = CreateEvent(NULL,TRUE,FALSE,NULL);
DLMS_mTimerITO = CreateWaitableTimer(NULL,TRUE,NULL);
SetWaitableTimer(DLMS_mTimerITO,&li,lPeriod,DLMSi_TimerITO,NULL,FALSE);
for(;;)
{
wMsg = WaitForSingleObject(DLMS_mEventRecv,INFINITE);
if(wMsg == WAIT_OBJECT_0)
{
//Do Something puis restart timer
/ * Restart Timer*/
li.QuadPart = -(LONGLONG)lPeriod * 10000;
SetWaitableTimer(DLMS_mTimer,&li,lPeriod,DLMSi_TimerITO,NULL,FALSE);
}
SleepEx(1,TRUE);
}
} |
Comment faire sur linux pour avoir ce genre de fonctionalité a savoir un timer quon pourra reseter.
Je suis nveau sur linux et toute aide sera la bienvenue,
Merci d'avance,