ok vale intentare entonces por ahi que es donde mas corto sera el viaje entonces cualquier cosa les comento
un abrazo El 28 de enero de 2011 05:14, tny <a.por...@gmail.com> escribió: > Además de threads y process también hay programación asíncrona. > > Si lo vas a hacer con el comando, yo creo que lo mejor es usar > io_add_watch como ya te han recomendado: > www.pygtk.org/pygtk2tutorial/sec-MonitoringIO.html > De este modo el propio gestor de eventos de pygtk se encarga de llamar a > tu función cada vez que haya datos que leer en stdout > > No necesitas más que definir la función, crear el subproceso, y asignar > dicha función como callback del stdout del subproceso, y el gtk.main() > se encarga de todo. > > > Por si no andas fino con el inglés te lo traduzco-resumo > > source_id = gobject.io_add_watch(source, condition, callback) > > source es el fileno del stdout subprocess > condition es gobject.IO_IN (porque quieres leer) > callback es la función que se encargará de leer cuando haya datos que > leer > > la función callback sera del estido de > def input_callback(source, condition): > > donde source es el fileno del stdout del subprocess > y a condition puedes ignorarle, pues en tu caso siempre sera IO_IN > OJO debes devolver True para que callback sea llamado la próxima vez que > lleguen datos a stdout. > Y no hace falta andar con seeks ni nada, puesto que stdout es un pipe, > una vez que lees los datos desaparecen. > > > El jue, 27-01-2011 a las 10:13 -0500, Tony Peña escribió: > > vale, ya andaba por thread a ver si me resultaba pero estube pensando > > tambien otra opcion que quizas sea otra via es que: > > > > podria abrir el fichero antes de ejecutar el proceso y ponerle un > > seek(0) > > como posicion inicial, ejecutar con el thread el proceso, y mientras > > esta > > escribiendo el seek comience a ir parseando > > y hacer un recorrido hasta donde se vaya creando mientras se parsea > > como > > 2das cosas que debe hacer, y luego seguir recorriendo el fichero > > con el mismo seek > > eso podria resolver tambien? > > > > vaya es algo tan sencillo como cualquiera que manda a hacer algo en > > bash y > > le mande la salida a un log y por otro lado este el tail -f mirando el > > log > > que se ve como avanza cuando sucede algo y sino se queda esperando > > hasta que > > le pasen el Ctrl C entiendes? > > > > bueno eso mismo pero en python > > > > saludos > > _______________________________________________ > Python-es mailing list > Python-es@python.org > http://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ >
_______________________________________________ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/