Ich habe immer nur panel-applets für gnome gefunden, die nur die auslastung für den Durchschnitt aller CPU's anzeigt. Aber ich wollte für jeden CPU(core) eine eigene Anzeigen.
Da hab ich das Ding halt geschrieben
Mit hilfe hier aus dem Forum hier habe ich das ganze dann mal fertiggestellt.
Hier ist das ganze:
http://rapidshare.com/files/120694057/m ... %20target=
Wenn hier wer nur mal schnell in den code schauen will:
http://paste.pocoo.org/show/63974/
Das ist mein erstes ernstes python/pygtk überhaupt. Vorher habe ich nur c++ (auch einmal mit gtkmm) gemacht. Ich bin also ein Anfänger. Wenn wer Fehler oder ungereimtheiten im Code findet, bitte bescheid sagen. Auch wenn ihr sachen findet, die man "nur" besser machen kann solltet ihr mir das sagen. Es ist mein Projekt python zu lernen.
Zum installieren einfach entpacken und als root ./setup.py ausführen. Danach muss man gnome neu starten
Das ganze hat ein Problem:Ich sehe leider immer fast nur schwarz. Mein q6600 ist einfach nicht genug ausgelasstet...
Hier ein kleiner Screenshot:
(von meinen wie schon gesagt 4 core system)
e\
updated 18:11 5.6.08
updated 16:00 6.6.08
updated 10:25 7.5.08
Gnome Mcore Applet
-
- User
- Beiträge: 9
- Registriert: Mittwoch 4. Juni 2008, 16:34
Zuletzt geändert von Schattenbringer1 am Samstag 7. Juni 2008, 09:23, insgesamt 4-mal geändert.
Code: Alles auswählen
if work <> 0:
work/=all
if idle <> 0:
idle/=all
Code: Alles auswählen
stat = open('/proc/stat', 'r')
load =[]
for line in stat:
match=self.getcpu.match(line)
if match:
load.append([int(match.group(2)), float(match.group(2)), float(match.group(3)), float(match.group(4))])
stat.close()
return load
Code: Alles auswählen
stat = open('/proc/stat', 'r')
load =[]
try:
for line in stat:
if self.getcpu.match(line):
load.append([int(match.group(2))] + [float(match.group(i)) for group in [2,3,4]])
finally:
stat.close()
return load
Und noch so allgemein:
http://www.python.org/dev/peps/pep-0008/
-
- User
- Beiträge: 9
- Registriert: Mittwoch 4. Juni 2008, 16:34
Das mit dem try-block macht sinn Bin halt noch von c++ gewöhnt, dass das autmoatisch geht. werde das gleich mal ändern und gleich uppen
den unterschied von <> und != verstehe ich ehrlich gesagt nicht. Wäre nett wen du mir sagen würdest warum das besser ist.
Das dokument werde ich mir mal bei gelegenheit durchlesen.
Danke für das Feedback
e\ist geupdated
den unterschied von <> und != verstehe ich ehrlich gesagt nicht. Wäre nett wen du mir sagen würdest warum das besser ist.
Das dokument werde ich mir mal bei gelegenheit durchlesen.
Danke für das Feedback
e\ist geupdated
-
- Python-Forum Veteran
- Beiträge: 16025
- Registriert: Freitag 20. Juni 2003, 16:30
- Kontaktdaten:
Der Unterschied ist, dass quasi alle ``!=`` verwenden, nicht nur in Python. ``<>`` wird in Python 3.0 entfernt.Schattenbringer1 hat geschrieben:den unterschied von <> und != verstehe ich ehrlich gesagt nicht. Wäre nett wen du mir sagen würdest warum das besser ist.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
-
- User
- Beiträge: 9
- Registriert: Mittwoch 4. Juni 2008, 16:34
Version 0.2
So ich habe jetzt mal ein Grosses update gemacht.
-jetzt kann das Ding jetzt bei irgentjemanden ausser mir laufen (sorry an alle die es runtergeladen haben und wo es nicht funktioniert hat)
- wenn man jetzt auf das applet klicked öffnet sich gnome-system-monitor
-es nutzt jetzt psyco falls installiert.
(download im ersten Post)
So ich habe jetzt mal ein Grosses update gemacht.
-jetzt kann das Ding jetzt bei irgentjemanden ausser mir laufen (sorry an alle die es runtergeladen haben und wo es nicht funktioniert hat)
- wenn man jetzt auf das applet klicked öffnet sich gnome-system-monitor
-es nutzt jetzt psyco falls installiert.
(download im ersten Post)
<hust>`with`-Statement!</hust>audax hat geschrieben:das eher so:damit die Datei auch sicher geschlossen wird.Code: Alles auswählen
stat = open('/proc/stat', 'r') load =[] try: for line in stat: if self.getcpu.match(line): load.append([int(match.group(2))] + [float(match.group(i)) for group in [2,3,4]]) finally: stat.close() return load
Nachtrag: Wo soll das `match` in deiner veränderten Fassung herkommen?
Code: Alles auswählen
with open('/proc/stat', 'r') as stat:
load =[]
for line in stat:
match = self.getcpu.match(line)
if match:
load.append([int(match.group(2))] + [float(match.group(i)) for group in [2,3,4]])
return load
-
- User
- Beiträge: 9
- Registriert: Mittwoch 4. Juni 2008, 16:34
Das mit dem with statement funktioniert irgentwie nicht. Aber so wie ich das verstanden habe macht das eh keinen grossen unterschied.
Aber ich habe derweil mal einen recht fatalen fehler behoben, durch den das ding zu abstürtzen gebracht werden konnte.
Hat das ganzen den noch keiner Ausprobiert? SO wenige können in einen python forum ja gar nicht gnome haben. Auch wenn ihr ein Problem beim installiern habt, sagt bescheid. Es wird höchstwahrscheinlich an einen Fehler von mir liegen...
Aber ich habe derweil mal einen recht fatalen fehler behoben, durch den das ding zu abstürtzen gebracht werden konnte.
Hat das ganzen den noch keiner Ausprobiert? SO wenige können in einen python forum ja gar nicht gnome haben. Auch wenn ihr ein Problem beim installiern habt, sagt bescheid. Es wird höchstwahrscheinlich an einen Fehler von mir liegen...
Für das `with`-Statement bräuchtest du Python 2.5 und müsstest an den Anfang deines Quelltextes schreiben.
Code: Alles auswählen
from __future__ import with_statement
-
- Python-Forum Veteran
- Beiträge: 16025
- Registriert: Freitag 20. Juni 2003, 16:30
- Kontaktdaten:
Ich habe GNOME und 2 CPUs und sehe trotzdem keinen Nutzen darin. Für mich ist die Anzeige der Prozessorauslastung (ob es seperat oder kumuliert ist) eine nutzlose Spielerei, sorry.Schattenbringer1 hat geschrieben:Hat das ganzen den noch keiner Ausprobiert? SO wenige können in einen python forum ja gar nicht gnome haben.
Noch dazu hast du es bei Rapidshare hochgeladen, da hab ich schon gar keine Lust etwas herunterzuladen.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Man könnte auch eine "standalone"-Funktion einbauen, für diejenigen, die PyGtk haben, aber kein gnome verwenden. Dazu erstellt man dann einfach ein gtk.Window und platziert das Applet darin. Etwa so. Dann müsste man zum eben Testen auch nichts mehr von Rapidshare herunterladen.
Außerdem scheint das ``gnome.applet``-Modul deprecated zu sein und man sollte ``gnomeapplet`` stattdessen verwenden.
Außerdem scheint das ``gnome.applet``-Modul deprecated zu sein und man sollte ``gnomeapplet`` stattdessen verwenden.
-
- User
- Beiträge: 9
- Registriert: Mittwoch 4. Juni 2008, 16:34
Deine sache. Habe vieleicht ein bischen überreagiert. Also ich habe das als ganz nützlich empfunden, als ich ein bischen mit c und pthread's rumgespielt habe. Ich finde das eigentlich immer ganz interresantLeonidas hat geschrieben:Ich habe GNOME und 2 CPUs und sehe trotzdem keinen Nutzen darin. Für mich ist die Anzeige der Prozessorauslastung (ob es seperat oder kumuliert ist) eine nutzlose Spielerei, sorry.Schattenbringer1 hat geschrieben:Hat das ganzen den noch keiner Ausprobiert? SO wenige können in einen python forum ja gar nicht gnome haben.
Noch dazu hast du es bei Rapidshare hochgeladen, da hab ich schon gar keine Lust etwas herunterzuladen.
Kannst du mir den eine kostenlose alternative zu rapidshare nennen? Ich bin gerne bereit das irgentwo anders hochzuladen. Rapidshare war nur das, was mir als erstes eingefallen ist.
@Trundle: danke. Habe das schon im git. werde ein bisschen testen und wenn es keine Probleme gibt (wovon ich ausgehe) hochladen. Ich hatte das "from __future__ import with_statement" nach den anderen imports
e\ und ein Teil seines sinnes hat das Programm schon erfüllt: Ich habe mehr zu python und pygtk gelernt.
-
- Python-Forum Veteran
- Beiträge: 16025
- Registriert: Freitag 20. Juni 2003, 16:30
- Kontaktdaten:
Irgendein kostenloser Webspace müsste es schon tun.Schattenbringer1 hat geschrieben:Kannst du mir den eine kostenlose alternative zu rapidshare nennen? Ich bin gerne bereit das irgentwo anders hochzuladen. Rapidshare war nur das, was mir als erstes eingefallen ist.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
-
- User
- Beiträge: 9
- Registriert: Mittwoch 4. Juni 2008, 16:34
Bei allen freehostern die ich kenne muss man eine HP haben, sonst wird der Space recht schnell wieder gelöscht. Ich habe vor einiger Zeit mal bei Funpic einige Bilder und Downloads gelagert(ohne HP). Eines tages waren die einfach unangekündigt weg. Das war ein Spass alle möglichen links wieder umzubiegen
Und eine HP zu machen habe ich grade nicht das bedürfnis. Insbesonderen nicht mit PHP.
Und eine HP zu machen habe ich grade nicht das bedürfnis. Insbesonderen nicht mit PHP.
Wenn du nicht gerade absolut hingefrickelte Codezeilen hast, kannst du deine Releases auch im Käseladen auf die Theke legen.