On Fri, Mar 27, 2009 at 01:46:04AM -0300, Carlos Charlie wrote:
> Hola, tengo entendido que si en una aplicacion hecha en C se hacen
> muchos fseek para acceder a un archivo se pierde mucho en performance
> ya que un fseek equivale a un acceso a disco, queria saber si con
> ftell pasa los mismo. ¿Una llamada a ftell equivale a un acceso a
> disco o simplemente se esta retornando un campo almacenado en la
> estructura FILE? ¿Puedo hacer muchos ftell en mi aplicacion sin
> empeorar significativamente el tiempo de ejecucion de mi aplicacion?
Ni fseek ni ftell acceden normalmente a disco, ya que la posicion del
"file pointer" es algo que lleva, por proceso, o el kernel o la libc (o
ambos), pero no tiene que ver con lo que esta en el disco.
La unica excepcion que se me ocurre es cuando usas fseek() para
averiguar la longitud de un archivo, lo cual supongo que si puede
terminar en accesos a disco algunas veces, pero es un caso muy
particular.
Gracias,
Alberto
_______________________________________________
Lista de correo Programacion.
[email protected]
http://listas.fi.uba.ar/mailman/listinfo/programacion