Řešením je použití seznamu pro váš příkaz
command = ["exp", "userid=user/[email protected]", "file=dump.dmp"]
process = subprocess.Popen(command, stdout=subprocess.PIPE)
pak čtete process.stdout v řádku po řádku:
line = process.stdout.readline()
tímto způsobem můžete aktualizovat GUI bez čekání. KDYŽ podproces, který spouštíte (exp), vyprázdní výstup. Je možné, že výstup je vyrovnávací paměť, pak neuvidíte nic, dokud nebude výstupní vyrovnávací paměť plná. Pokud je to tak, pak máte pravděpodobně smůlu.