Tenemos información que debemos escribir (aproximadamente 18 KB) en un archivo .txt almacenado en una de nuestras unidades de red. El archivo se vuelve a escribir una vez cada 15 minutos, pero se lee prácticamente al menos cada segundo. Actualmente estamos usando StreamWriter para escribir el archivo.Manera eficiente de escribir en un archivo de texto en VB.NET
El servidor de archivos está en una ubicación remota y el ping de ida y vuelta varía desde menos de 1 ms hasta 15 ms.
El problema es que, a veces, se necesitan hasta seis segundos para escribir los contenidos en el archivo, lo cual es demasiado largo incluso después de considerar la velocidad de la red.
Por lo tanto, me pregunto si existe alguna forma eficiente de escribir el archivo usando VB.NET para mejorar el rendimiento. Java tiene una herramienta muy buena llamada BufferedOutputStream, que desafortunadamente no está disponible en VB.NET (o simplemente no la he encontrado).
StreamWriter ya está en el búfer. –
Solo un pensamiento. Si lo está leyendo con tanta frecuencia, es posible que experimente algunos problemas de contención, múltiples lecturas que bloquean el archivo contra la escritura durante un breve período, lo que ocasiona un retraso ocasional en la escritura del archivo. – DarinH
¿Cuál es la velocidad de la red? De lo bajo, la contención, como la describe drventure, podría ser el culpit. ¿Y la conexión es utilizada por otros programas/usuarios ?. – MarcelDevG