[Olpc-uruguay] Cómo mantener interactuando actividades

Fabian Peña fapenia en adinet.com.uy
Vie Jun 3 23:16:40 EDT 2011


En lugar de usar os.system deberias usar os.spawn(os.P_NOWAIT

aca hay un ejemplo de uso que recorre el path buscando el ejecutable



import os
import string

def run(program, *args):
     # find executable
     for path in string.split(os.environ["PATH"], os.pathsep):
         file = os.path.join(path, program)
         try:
             return os.spawnv(os.P_NOWAIT, file, (file,) + args)			
         except os.error:
             pass
     raise os.error, "cannot find executable"

run("python", "hello.py")

print "goodbye"



On 03/06/2011 01:42 p.m., amviera en adinet.com.uy wrote:
> Hola.
>
> Para un proyecto de actividad que tengo ya casi terminado, y pronto
> para subir al portal, sólo me falta solucionar un pequeño
> inconveniente. Quizá alguien me pueda ayudar.
>
> En ciertos momentos es probable que el usuario necesite utilizar
> algunas de las herramientas con que cuenta esta actividad. Algunas de
> ellas se encuentran en mòdulos que se importan al programa principal, y
> se pueden utilizar varias al mismo tiempo sin ningún tipo de
> inconveniente. Si quedan en el marco se pueden utilizar unas u otras, e
> incluso pueden interactuar.
>
> Mi problema es que en algunos casos no se trata de mòdulos sino de
> archivos independientes que se ejecutan con os.system("...")
>
> En ese caso sólo se puede utilizar aquel programa al que se llamó
> desde ese comando, mientras el resto de la actividad deja de funcionar
> temjporalmente hasta que se cierre ese nuevo programa. Por eso no es
> posible interactuar ni compartir información.
>
> Un ejemplo: Una de mis herramientas es un editor de texto (es un
> módulo y con él no hay problemas) con el que puedo crear un archivo
> web. Si desde el mismo programa abro el Mozilla haciendo os.system
> ("sugar-launch Mozilla") para ver cómo va quedando el web, el editor
> deja de funcionar al igual que el programa principal hasta que cierro
> Mozilla.
>
> ¿Alguna posible solución?
>
> Gracias, Mauricio Viera.
>
>
> _______________________________________________
> Olpc-uruguay mailing list
> Olpc-uruguay en lists.laptop.org
> http://lists.laptop.org/listinfo/olpc-uruguay
>



More information about the Olpc-uruguay mailing list