Article View: es.comp.os.linux.programacion
Article #10176Re: Cuestiones sobre programacion puerto serie
From: Adrian Rossiter
Date: Tue, 19 Mar 2002 19:28
Date: Tue, 19 Mar 2002 19:28
35 lines
2485 bytes
2485 bytes
On 19 Mar 2002 13:20:21 GMT, Jes�s �ngel wrote: >No puedo redireccionar la salida del programa a un fichero. El programa >muestra los caracteres le�dos en la salida estandar, pero si >redirecciono la salida a un fichero, en ese fichero no se escribe nada, >aunque en la salida estandar tampoco aparece nada. Parece un problema de "buffering". Cuando envias al terminal stdout est� "line buffered" (es decir el programa envia al terminal linea por linea) pero cuando envias a un fichero stdout est� "block buffered" - el programa espera hasta que hay muchos bytes (quiz�s 1024 bytes, o m�s) en el buffer de salida antes de enviarlos. Si interumpes el programa antes de que envie los primeros caracteres al fichero no habr� nada en el fichero. Podr�as solucionarlo con un fflush(stdout) al final del do/while bucle. Pero si el programa termina normalmente no hay problema. La p�gina man de setvbuf dice un poco sobre "buffering". >Seg�n el COMO, esto hace que read(2) efect�e la lectura cuando se reciba >un caracter (VMIN=1) o cuando el tiempo entre dos caracteres sea >superior a 0.6s (VTIME=6). Sin embargo el temp�rizador parece no tener >efecto y read(2) se queda esperando el siguiente caracter. Con estas condiciones (MIN>0, TIME>0) el temp�rizador no empieza hasta que el read reciba el primer byte. Saludos Adrian. -- Adrian Rossiter Email: adrian_r@teleline.es Web Site: http://www.terra.es/personal/adrian_r
Technical Details
Message-ID:
<slrna9f4ag.7fp.adrianr@localhost.localdomain>Path:
arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!newsfeed.stanford.edu!news-spur1.maxwell.syr.edu!news.maxwell.syr.edu!fu-berlin.de!uni-berlin.de!193-152-230-178.uc.nombres.ttd.ES!not-for-mailReferences:
<slrna9efmg.1b5.jpozdom@sol.linux.bogus>Show Full Headers
Complete Article Headers
X-Google-Language: SPANISH,ASCII X-Google-Thread: f86c8,ab207f181b45ad15 X-Google-Attributes: gidf86c8,public X-Google-ArrivalTime: 2002-03-19 11:36:40 PST Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!newsfeed.stanford.edu!news-spur1.maxwell.syr.edu!news.maxwell.syr.edu!fu-berlin.de!uni-berlin.de!193-152-230-178.uc.nombres.ttd.ES!not-for-mail From: adrianr@jazzfree.com (Adrian Rossiter) Newsgroups: es.comp.os.linux.programacion Subject: Re: Cuestiones sobre programacion puerto serie Date: Tue, 19 Mar 2002 19:28:16 +0000 Lines: 35 Message-ID: <slrna9f4ag.7fp.adrianr@localhost.localdomain> References: <slrna9efmg.1b5.jpozdom@sol.linux.bogus> Reply-To: adrian_r@teleline.es NNTP-Posting-Host: 193-152-230-178.uc.nombres.ttd.es (193.152.230.178) Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit X-Trace: fu-berlin.de 1016566599 19993054 193.152.230.178 (16 [70272]) X-Orig-Path: adrianr User-Agent: slrn/0.9.6.2 (Linux)