Zdravím, řeším teď takový problém, jak za běhu programu v němž mám cyklus měnit různé parametry tak, aby když zadám script.py restart se mi znovu načetl program script.py stop ukončil atp... něco podobného, jak funguje apache2 restart.. Neměli byste tip jak na to ?
Fórum › Python
Předávání argumentů za běhu programu
eh.. no, v programu script.py mám nekonečný cyklus - while True: ... , a chci ho nějak ovládat přes příkazovou řádku tak, že když zadám script.py restart, aby mi začal běžet daný cyklus odznovu. Něco podobného, jak se dá restartovat apache přes příkazovou řádku - apache2 restart.. Způsobem script.py to asi nepujde, protože by se spustil znovu s parametrem restart, ale jestli není nějaký způsob, jak takto ovládat program přes příkazovou řádku?
To x-time : Takhle to Apache nedělá, respektive na pozadí běží daemon (služba) httpd, kterou ty můžeš pomocí příkazu apache2 s parametry ovládat.
To x-time :
zkus si zavest nejaky pomocny pid soubor (klidne s pidem procesu) a pak program ridit podle parametru:
1) pokud bude parametr START, tak:
- pokud neexistuje pid soubor, tak ho vytvorit a spustit samotnou rutinu toho programu
- pokud existuje pid soubor (a treba process s se stejnym pidem fakt bezi), tak jen vypsat, ze uz process bezi
2) pokud bude parametr STOP:
- zkontrolovat pid a pokud existuje tak ukoncit process a smazat pid
- pokud pid soubor neexistuje, tak jen vypsat, ze nic nebezi...
3) podobne pak implementovat RESTART, STATUS, atp.
To Tom : Tohle se dá implementovat i signály...
Přidej příspěvek
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku
×Vložení zdrojáku
×Vložení obrázku
×Vložení videa
Uživatelé prohlížející si toto vlákno
Podobná vlákna
Předávání argumentů dceřiné třídě — založil Sony
Zrychleni behu programu — založil VeverkaVeveri
Konec běhu programu — založil Polarski
Zastaveni behu programu — založil Tom@sQo
Vytvorenie tlacitka za behu programu — založil fero
Moderátoři diskuze