Thread durch Timer Starten



  • Hi,
    habe volgendes Problem mache mir da schon seit tagen den Kopf.
    Habe ienen Thread, wobei chBEGINTHREADEX ein makro ist der _beginthreadex darstelt.
    DWORD dwThreadID;
    hThreadDraw=chBEGINTHREADEX(NULL, 0, DrawThread, NULL, 0, &dwThreadID);

    DWORD WINAPI DrawThread(LPVOID lpvParam)
    {
    WaitForSingleObject(hTimerThread, INFINITE);
    Objekt objekt; //Objekte im Thread
    ...
    ThreadComleted.Format("Thread ausgeführt %d", g_ThreadCounter);
    g_ThreadCounter++;
    return(0);
    }

    WaitForSingleObject soll erst signalisiert werden wen der Timer in meiner Dialog Klasse abgelaufen ist. Leider startet der Thread sobald folgendes:

    LARGE_INTEGER li;
    hTimerThread=CreateWaitableTimer(NULL, FALSE, NULL);
    li.QuadPart=-(50 000 000); //Fünf sekunden da in 100 Nano sec intervalen
    SetWaitableTimer(hTimerThread, &li, NULL, NULL, NULL, FALSE);

    Das Problem der Thread starte Sobald sein HANDLE DrawThread in SetWaitableTimer "signalisiert wird" soll aber erst wenn der Timer abgezählt hat signalisiert werden.

    Kann mir da jemand helfen

    Vielen Dank!


Anmelden zum Antworten