Announcement

Collapse
No announcement yet.

Prozessorauslastung verkleinern

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Prozessorauslastung verkleinern

    Hallo

    Mein Problem liegt darin das mein Programm den PC zu 100% auslastet. Ich möchte jedoch das nur ca 80% sind oder es zu Aus Entlastung, einfach das man nebenbei auch noch schnell was anderes machen kann.

    Mein Code besteht hauptsächlich aus Schleifen.

    Gibt es da eine Möglichkeit auch noch dinge wie Tasten Eingaben etc. zu berücksichtigen?

    Freundliche Grüsse
    Bonsai

  • #2
    Hallo,

    eine starre Auslastungsgrenze kann nicht angegeben werden. Du kannst den Prozess mit einer niedrigeren Priorität laufen lassen damit andere "Sachen" Vorrang haben.

    mfG Gü


    Edit Moderator: Hab das Thema zu Windows verschoben da es offensichtlich nichts mit ADO.net zu tun hat.
    "Any fool can write code that a computer can understand. Good programmers write code that humans can understand". - Martin Fowler

    Comment


    • #3
      Wenn der Prozess deinen Rechner nicht auslasten soll kannst du einfach den Prozess zwischenzeitlich mit System.Threading.Thread.Sleep schlafenlegen. Die Antwort ist aber vermutlich genauso blödsinnig wie die Frage. Warum sollte man dem Idletask 20% Prozessorzeit gönnen wenn man die Rechenzeit selber braucht?

      Wenn du ein langlaufende Berechnung durchführst du aber noch Zugriff auf die UI willst solltest du die Berechnung aus dem Hauptthread(den UI Thread) in einen anderen Thread auslagern.

      Oder als Billiglösung zwischendurch mal Application.DoEvents aufrufen damit die Messageschleife (und damit auch Tastatur und Mouseevents) verarbeitet werden können.

      Comment


      • #4
        Hast Du auch eine System.Windows.Forms.DoEvents() in die Schleifen gebaut?
        Gibt es leer laufende Schleifen, in denen auf etwas gewartet wird?
        Falls ja solltest Du besser Events benutzen oder zumindest System.Threading.Thread.Sleep(10);
        einfügen.

        Comment

        Working...
        X