[pyar] [Consulta] sys.stderr.flush()

Alejandro J. Cura alecu en protocultura.net
Mie Jun 6 09:57:24 ART 2012


2012/6/6 Mariano Guerra <luismarianoguerra en gmail.com>:
> 2012/6/6 Daniel Moisset <dmoisset en machinalis.com>:
>> 2012/6/5 Mariano Guerra <luismarianoguerra en gmail.com>:
>>> flush le dice al sistema operativo que vacie los buffers que tiene asociados
>>> a stderr y efectivamente escriba lo que tiene por escribir.
>>>
>>> cuando uno escribe algo a stderr (o cualquier lado) el sistema operativo por
>>> cuestiones de eficiencia pone esas cosas en un buffer y lo escribe cuando
>>> considera que es mas apropiado.
>>>
>>
>> Una corrección (que a fines de la pregunta original creo que no hace
>> diferencia, pero agrego por completitud). Los susodichos buffers están
>> en la biblioteca de I/O linkeada dentro del intérprete y en userspace,
>> no en el sistema operativo. El sistema operativo tiene *otros*
>> buffers, cuya escritura puede forzarse con la syscall fsync (en
>> python, disponible a través de os.fsync)
>
> gracias por la aclaracion
>
> cual seria el cambio minimo en lo que dije para que sea valido,
> reemplazar sistema operativo por proceso/libreria/interprete?

"""
flush le dice a [la biblioteca standard de C] que vacie los buffers
que tiene asociados a stderr y efectivamente escriba lo que tiene por
escribir.
cuando uno escribe algo a stderr (o cualquier [otro archivo abierto
con open]) [la biblioteca standard de C] por cuestiones de eficiencia
pone esas cosas en un buffer y lo escribe cuando considera que es mas
apropiado
"""

> menos mal que rendi el final de sistemas operativos hace muchos anios :P

jejejej.

saludos,
-- 
alecu



More information about the pyar mailing list