[python] bash,signal

starenka . starenka0 na gmail.com
Pondělí Únor 18 12:11:48 CET 2013


Honza me predbeh, tak uz jen pro kompletnost
http://docs.python.org/2/library/signal.html

s.
---
In Perl you shoot yourself in the foot, but nobody can understand how
you did it. Six months later, neither can you. | print
'aknerats'[::-1]


2013/2/18 Honza Javorek <jan.javorek at gmail.com>:
> Tak mě hlavně napadá, jestli jsi si jistý, kde je ta prodleva - jestli je
> opravdu v tom Python skriptu. Kdyby byla prodleva v tom programu na ovládání
> stolku, tak to tímto nevyřešíš.
>
> Jinak je to problém komunikace dvou procesů a to můžeš udělat různě. Záleží
> jestli jsi na Windows nebo na nějakém *NIXu, ale možnosti jsou celkem jasně
> dány: https://en.wikipedia.org/wiki/Inter-process_communication Ty sis
> vybral ten první řádek v tabulce, soubor. Můžeš použít signály, sockety, ...
> ale tady je asi otázka co zvládne ten bash a co je trochu overkill. Mě se
> asi nejvíc pro tvoje použití líbí signály. Stačí ti v podstatě dva: "vyfoť"
> a "ukonči se". Ten první by byl nějaký SIGUSR1/SIGUSR2, druhý normálně
> SIGTERM, který jde odchytit a skript by se pak řádně ukončil. Z bashe je
> můžeš posílat myslím úplně jednoduše pomocí kill.
>
> Honza
>
>
> 2013/2/18 vepro <p.zlamal at gmail.com>
>>
>> Ahoj,
>> Rad bych se optal na vas nazor ci zpusob reseni nasledujici ulohy:
>>
>>  V pythonu mam naspanou jednoduchou proceduru pro vyfoceni snimku na
>> digitalni zrcadlovce. Tento skript chci vyuzit pro nasnimani sekvence 360
>> snimku objektu na otocnem stolku. Aplikace ovladajici stolek po kazdem
>> otoceni spusti bashovsky skript, ktery v podstate vola pythoni skript.
>> Pythoni skript se spusti, vyfoti snimek, ulozi a posleze se ukonci. Toto se
>> tedy opakuje 360 krat. Problem spociva v rychlosti obdrzeni jednoho snimku,
>> ktery je cca 17s coz je z hlediska vyuziti mnoho. Zjistil jsem, ze problem
>> je v porizeni prvniho snimku. Udelal jsem si testovaci smycku, kde je v
>> sekvenci vyfoceno nekolik snimku, pricemz prvni snimek trva onen "obrovsky
>> cas", ostatni snimky jsou relativne rychle do 2s. V mem provedeni foceni
>> jednoho snimku ve skriptu je tedy kazdy snimek "prvni" a tudiz onech 17s.
>> Napadlo me tedy neresit snimek jako jednorazovy skript:
>> spust-vyfot-uloz-skonci ale v podobe "nekonecne" smycky, ktera by testovala
>> pritomnost predem daneho "nuloveho" souboru. Pokud by soubor existoval,
>> udelal by se snimek a nasledne by se smazal  "nulovy" soubor. Aplikace
>> ovladajici stolek by pak jenom vytvarela onen "nulovy" soubor v pripade
>> potreby udelani snimku. Ukonceni pythoniho sriptu by pak bylo provedeno pres
>> test nejakeho jineho "nuloveho" souboru. Takto to bude pravdepodobne plnit
>> muj ucel, ale zajimalo by me zda existuje elegantnejsi reseni napr. v podobe
>> posilani nejakych signalu z bashe do pythonu.
>>
>> Diky za pripadne rady
>> Petr
>> _______________________________________________
>> Python mailing list
>> Python at py.cz
>> http://www.py.cz/mailman/listinfo/python
>
>
>
> _______________________________________________
> Python mailing list
> Python at py.cz
> http://www.py.cz/mailman/listinfo/python


Další informace o konferenci Python