[Previo por Fecha] [Siguiente por Fecha] [Previo por Hilo] [Siguiente por Hilo]

[Hilos de Discusión] [Fecha] [Tema] [Autor]

[Ayuda] *NIX + Blocking I/O con timeout



Hola lista

Necesito una funcion en GNU C que me permita modificar
el timeout en descriptores de archivo para
lectura/escritura...

Estaba viendo fcntl() pero solo te permite hacer uso
del signal SIGIO cuando hay datos disponibles, pero
eso no me sirve para lo que quiero, yo necesito
definir un tiempo de espera maximo de "X" segundos en
especifico...

Por otro lado esta la funcion select(), sin embargo
tambien se me hace algo incomodo y desperdiciado pues
voy a utilizar un solo descriptor de archivo, ademas
que tengo que llamar la funcion select antes de
realizar la lectura...

Lo que yo necesito en especifico es modificar el
tiempo de espera en read/write y que automaticamente
me devuelva el error correspondiente en caso de que no
haya datos disponibles, sin tanto rollo de tener que
llamar select antes de cada lectura etc etc.

Mis preguntas son...

1. existe una funcion para alterar el valor del
timeout predefinido por el sistema?

2. una llamada a select() puede alterar dicho valor o
el parametro timeout es exclusivo de esta funcion y no
afecta llamadas subsecuentes directas a read() por
ejemplo?

Saludos!!




	
		
__________________________________
Do you Yahoo!?
Friends.  Fun.  Try the all-new Yahoo! Messenger.
http://messenger.yahoo.com/ 




[Hilos de Discusión] [Fecha] [Tema] [Autor]