[pyar] os.dup(), threads y os.read()

Marcos Dione mdione en grulic.org.ar
Mie Dic 2 06:50:01 ART 2015


On Tue, Dec 01, 2015 at 08:29:35PM -0300, Claudio Freire wrote:
> Lo que deberías hacer, que, sí, es medio una goma, es usar dos fd en
> el thread, stdin, y un pipe:
> 
> f = os.dup(0)
> rwake, wwake = os.pipe()
> fcntl.fcntl(f, fcntl.F_SETFL, fcntl.fcntl(f, fcntl.F_GETFL) | os.O_NONBLOCK)
> def foo(f, wake):
>     r,w,x = select.select([f,wake], [], [f,wake])
>     if wake in r:
>         break
>     if f in r:
>         d = os.read(f, 1024)
> os.write(wake, 'w')

    just for the record, quedó así:

https://github.com/StyXman/ayrton/commit/9b38c24be5cdd80fa470bb7db27dde979f14c27f

-- 
(Not so) Random fortune:
14:13 < judaz> Los japs hicieorn lo que queria!! un microondas con youtube
14:14 < judaz> le das start... te muestra el video de 59mins termina y pip
    pip pip unos ricos tallarines
14:16 < perrito666> judaz: seh, le das start, te muestra 2g1c y te quiero
    ver despues


More information about the pyar mailing list