QProcess und CPU Auslastung.



  • Hi würde gerne die CPU Auslastung ausgeben.

    //
    double n,m,nSeks;
    int nTime[100];
    int CPU;
    int i;

    /* n,m,nSeks=10000;
    CPU=0;
    i=0;
    //

    asy->start(program, arguments); 
    
    FILETIME ct,et,kt,ut;
    GetProcessTimes(asy,&ct,&et,&kt,&ut);
    m=nSeks*1000;
    n=kt.dwLowDateTime-nTime[i];
    if (n>m)
        n=m;
    CPU=int((n/m)*100);
    nTime[i-1]=kt.dwLowDateTime; 
    i++;
    mess(QString::number(CPU));
    

    Bekomme als Ergebniss:
    0 und dann immer 100 % 😕



  • Sind das alles Qt Befehle?! Kenne die nicht. Oder hast du das aus der WinAPI. Wenn ja, geh mal lieber in das dafür vorgesehene Forum. So richtig verständlich ist dein Code-Snipsel nämlich nicht^^



  • kennst du eine andere Möglichkeit die CPU auslastung auszulesen ?



  • Mhh die QProcess Abteilung ist relativ arm bestückt. Mir ist keine derartige Funktion in Qt bekannt. Denke deine WinAPI Funktion ist da wohl doch die beste Wahl. Oder du nimmst eine gewrappte Funktion der WinAPI. Das habe ich neulich schon gefragt: http://www.c-plusplus.net/forum/290638 Diese Bibliotheken wrappen die WinAPI Funktionen, sodass die dann nichtmehr so kompliziert sind.


Anmelden zum Antworten