[python] Prekreslovani GUI behem prace (bylo Priorita provadene akce)
Petr Prikryl
PrikrylP na skil.cz
Úterý Prosinec 19 09:46:49 CET 2006
Martin Jedlička
> Zdravim, mam napsanou aplikaci ve wxPythonu.
> Na stisknuti tlacitka se provadi nejaka akce
> (aplikace se pripojuje pres SSH na server).
> Jelikoz tato akce trva nekolik vterin, tak se
> napr. prepnu do jineho okna a delam si jine veci.
> Kdyz se ale opet prepnu do aplikace v pythonu,
> tak je zobrazeno jen bile okno (akce stale bezi
> na pozadi, ale GUI se nezobrazi).
> Podobny problem, jako kdyz program ve Windows
> neodpovida dokud se akce nedokonci. Nevite,
> jak zaridit, aby ta aplikace (to GUI) bylo
> videt i po navratu z jine aplikace?
> Najake nastaveni priorit procesu?
Nesouvisí to přímo s Pythonem. Je to obecnější.
Pokud vše obsluhuje jenom jeden proces, bude se
to takhle chovat. Priorita procesu s tím nesouvisí,
protože je to pořád jen jeden proces, který je
zaneprázdněn jinou činností. Požadavek na překreslení
okna čeká v podobě zprávy ve frontě a zpracuje
se až v okamžiku, kdy se proces dostane do hlavní
smyčky zpráv. Vynutit se to dá pomocí idle cyklu.
Případně by se možná dalo nakouknout do fronty
zpráv a zařídit si to překreslení ve vlastní režii.
Ale typicky se to dělá v jiném threadu/procesu.
pepr
Další informace o konferenci Python