Seite 1 von 1

IDLE update

Verfasst: Donnerstag 21. Februar 2008, 16:39
von Holzdolph
Hallo allerseits,

ich habe mir eine schöne GUI (mit tkinter) gebastelt ohne dabei wahnsinnig zu werden (zumindest sagen mir die Stimmen im Kopf immer das ich eh ganz normal bin -) mit der ich unter anderem ein externes Programm (ANSYS) aufrufe um ein paar Berechnungen zu machen...

soweit so gut, nur wenn das ANSYS startet bekommt weder meine GUI noch die IDLE auch nur die geringsten systemresourcen und meine schöne Anzeige - bei welcher Berechnung ANSYS gerade ist - ist ziemlich wertlos - weil sie zwar sicher dargestellt nur eben nie angezeigt wird.

ich verwende folgenen externen aufruf für ansys:

Code: Alles auswählen

UpdateAnsysData(line,self.parameterset[i],jobnr)
string = '-b -p struct -i start.mac -o xxx'
print "ansysStart jetzt\n"
process = subprocess.Popen([self.ansyspath+'ansys100.exe',string], stdout=subprocess.PIPE)
process.wait()
gibts da ne andere methode, es reicht schon wenn man die zeile mit dem print regelmässig sehen könnte (also die GUI ist solange das ANSYS läuft sowieso nebensache). oder liegts am IDLE ?

bin für jede anregung dankbar

Re: IDLE update

Verfasst: Donnerstag 21. Februar 2008, 17:09
von gerold
Hallo Holzdolph!

In etwa so:

Code: Alles auswählen

args = [
    os.path.join(self.ansyspath, "ansys100.exe"), 
    "-b", "-p", "struct", "-i", "start.mac", "-o", "xxx"
]
print "ansysStart jetzt\n"
process = subprocess.Popen(args, stdout = subprocess.PIPE)
for line in process.stdout:
    print line,
process.wait()
Und mit viel hoffen, verhält sich ansys100.exe kommunikativ und schreibt die Ausgabe sofort nach STOUT und cached nicht alles.

mfg
Gerold
:-)