SetThreadPriority(GetCurrentThread(),THREAD_PRIORITY_HIGHEST);



  • Hallööööööööööööchen! 🤡

    Ich hab da'n Problemchen 😞

    Wenn ich den Befehl

    SetThreadPriority(GetCurrentThread(),THREAD_PRIORITY_HIGHEST);
    

    beutze sollte ich ja eigentlich annehmen, dass ich über den Taskmanager sehen kann "Die Priorität ist am höchsten"
    Tu ich aber nicht. 😞 😞 😞
    Hab folgenden Code benutzt

    #include<windows.h>
    
    int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,
    				   char *pcCommandLine, int iShowCommand)
    {
        SetThreadPriority(GetCurrentThread(),THREAD_PRIORITY_HIGHEST);
        MessageBox(NULL,"Thread auf HIGHEST gesetzt\nSieh nach ob's funktioniert hat.","WinMain",MB_OK);
    
        return FALSE;
    }
    

    Wieso steht da nichts im Taskmanager?
    Wurde der Thread überhaupt auf HIGHEST gesetzt?
    Was mache ich falsch?

    😕 😞 😕



  • kann man mit dem task manager überhaupt genauere infos über die einzelnen threads eines prozesses bekommen? ich denke nicht... nimm mal "process explorer"



  • 🙄 Mach ich doch
    Wie soll ich's sonst rauskriegen?

    Von dort aus kann man ja auch die Priorität andern.
    Das Programm "taskmgr.exe" ist ja automatisch HIGHEST.
    Das muss es ja irgendwie selbst geschafft haben.

    Aber wenn ich SetThreadPriority benutze verändert sich garnichts 😞





  • weil der Taskmanager nur die Priorität des Prozesses, nicht der einzelnen Threads anzeigt.
    Also probier lieber mal:

    SetPriorityClass(GetCurrentProcess(), HIGH_PRIORITY_CLASS);
    

    die einzelnen Threads kannst du ja dann immer noch hochschrauben mit SetThreadPriority.



  • Danke! Funktioniert! 👍 😃

    Dank an DrakoXP 👍


Anmelden zum Antworten