tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
7
ZUGRIFFE
492
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    lernen.2007 lernen.2007 ist offline Mitglied Platin
    Registriert seit
    Mar 2005
    Beiträge
    743
    Hi Leute,

    ich habe in JAVA ein Oberfläche programmiert, dass es ein anderes Tool startet. Ich habe im grafischen Oberfläche ein Play(Start Tool) und ein Stop(Stop Tool) platziert. Play funktioniert ganz gewöhnlich. Wenn Tool läuft dann steigt die CPU Auslastung auf 99%. Wenn ich Stop Taste drücke, dann reagiert es überhaupt nicht. Wie kann man es besser machen bzw. dass Stop Taste auch richtig funktioniert( schnell reagiert).

    Danke im Voraus.

    Erkan
     

  2. #2
    Avatar von Laocoon
    Laocoon Laocoon ist offline Mitglied Gold
    Registriert seit
    Nov 2004
    Ort
    Köln
    Beiträge
    127
    Ich finde es ein bisschen schwierig aus deiner Beschreibung den Fehler zu rekonstruieren. Was startest du denn über die Button. Und wie machst du das?

    Oder habe ich da gerade grundsätzlich was verrafft?

    MfG
    Daniel
     
    Ein Experte ist ein Mann, der hinterher genau sagen kann, warum seine Prognose nicht gestimmt hat.
    Winston Churchill

  3. #3
    lernen.2007 lernen.2007 ist offline Mitglied Platin
    Registriert seit
    Mar 2005
    Beiträge
    743
    Mit Play Taste starte ich von der JAVA Umgebung aus ein beliebiges Tool. Sobald das Tool gestartet wird, dann steigt die CPU Auslastung auf 99%. Ich will jetzt mit Stop Taste dieses Tool wieder beenden. Aber Stop Taste reagiert nicht wenn dann erst 10-Sekunden später. Das Grund ist ja klar, wegen CPU Auslastung. Wie kann ich so machen, dass der Stop Taste auch so schnell wie Play Taste reagiert?

    Danke
     

  4. #4
    venyl venyl ist offline Mitglied Silber
    Registriert seit
    Jul 2006
    Beiträge
    71
    Ich denke mal das ohne Code zu sehen man nicht sehr viel dazu sagen kann!
     
    ich rage heraus und gehe in die tiefe.....wenn ich PHP kann :P

  5. #5
    kle-ben kle-ben ist offline Mitglied Brokat
    Registriert seit
    Oct 2004
    Beiträge
    492
    Hi !
    Ich glaube nicht das du die CPU-Asulastung ändern kanst.
    Dazu müsstest du das Programm auf der Stelle anhalten
    und nicht mehr aufgerufen werden. Und das ist letztendlich
    Sache des Betriebssystems. Die Zeit die die CPU nach dem
    drücken des Stopbuttons noch aktiv ist ist durchaus legitim.
    Sie tritt auch nach dem drücken des Playbuttons auf.
    Playbutton : Alles in den Speicher laden.
    ...Programm läuft...
    Stopbutton : Speicher wieder freigeben.
    Es wird also auch eine gewisse Zeit beim druecken des
    Playbuttons benoetigt.

    Ich hoffe ich hab dich richtig verstanden?

    Benny
     
    Theorie ist Wissen, das nicht funktioniert.
    Praxis ist, wenn alles funktioniert und man weiß nicht warum

  6. #6
    lernen.2007 lernen.2007 ist offline Mitglied Platin
    Registriert seit
    Mar 2005
    Beiträge
    743
    Nein. Stellt dir ein MP3 Player vor. Du drückst auf die Play Taste und hörst Musik. Du willst jetzt die Musik Wiedergabe stoppen aber MP3 Player reagiert auf die Stop Taste nicht. Weil MP3 Player die CPU um 99% auslastet. Ich hoffe mit diesem Beispiel wird ein bisschen deutlicher.

    Danke
     

  7. #7
    yan1 yan1 ist offline Mitglied Gold
    Registriert seit
    Feb 2005
    Ort
    Kirchdorf a. d. Krems, OÖ
    Beiträge
    213
    Kann es sein dass du etwas in deinem GUI Thread startest das sehr rechenaufwändig ist und deswegen die anderen Events alle blockiert?

    Versuche mal das ganze in einen eigenen Thread zu verlagern, aber genaueres kann man wirklich nur dann sagen, wenn du deinen betroffenen Code hier postest.

    Lg, Yanick
     

  8. #8
    Octoate Octoate ist offline Rookie
    Registriert seit
    May 2006
    Beiträge
    5
    Hmm, aus der Beschreibung ist das wirklich schwer rauszuhoeren, was du fuer ein Problem hast. Machst du in deinem GUI Programm eine Ueberpruefung, ob das aufgerufene Programm noch laeuft oder wartest du mit einer Schleife auf ein bestimmtes Event? Wenn ja: wie oft machst du diese Ueberpruefung? Oftmals wird gerne eine Schleife verwendet, die staendig wiederholt wird. Ein Thread.sleep(<Zeit in Millisekunden>) in dieser Schleife koennte dann weiterhelfen.
    Ohne den Quellcode ist das aber nur eine Vermutung.
     

Ähnliche Themen

  1. VB .Net - CPU Auslastung
    Von styler2go im Forum .NET Café
    Antworten: 10
    Letzter Beitrag: 08.07.08, 21:26
  2. RAM- und CPU-Auslastung mit AFX
    Von boardkiller im Forum Videoschnitt, Videotechnik & -produktion
    Antworten: 0
    Letzter Beitrag: 21.09.04, 17:39
  3. Ram auslastung
    Von WhiteWolf im Forum Linux & Unix
    Antworten: 7
    Letzter Beitrag: 21.03.04, 22:40
  4. CPU Auslastung
    Von knuth im Forum VisualStudio & MFC
    Antworten: 2
    Letzter Beitrag: 07.02.04, 18:34
  5. cpu auslastung
    Von cursed im Forum Microsoft Windows
    Antworten: 2
    Letzter Beitrag: 28.11.03, 12:36