BetterStreams 1.0

Licencia: Prueba gratuita ‎Tamaño del archivo: 618.50 KB
‎Calificación de usuarios: 3.0/5 - ‎1 ‎Votos

acerca de BetterStreams

Biblioteca .Net que consta de tres clases para E/S asincrónicas simplificadas (AsyncStream), mediante secuencias de datos alternativas (AlternateStreams) y una secuencia eficaz que se asoma y busca (BetterBufferedStream). BetterStreams puede mejorar fácilmente el rendimiento de las aplicaciones nuevas o existentes, a veces de forma dramática, con tan poco como un cambio de una sola línea en el código. AsyncStream ajusta una secuencia existente y proporciona E/S asincrónicas a través de los métodos estándar Read(), ReadByte(), Write() y WriteByte(); si se llama directamente a la secuencia ajustada, estos requerirían la espera de E/S en el dispositivo subyacente (como un disco), pero el AsyncStream rellena o vacía automáticamente su búfer interno desde o hacia la secuencia ajustada mediante un subproceso en segundo plano y nunca se bloqueará mientras haya suficientes bytes disponibles en el búfer. Incluso si la lógica de la aplicación ya está construida alrededor de E/S sincrónica, por lo que es asincrónica normalmente no requiere nada más que encapsular la secuencia original en un AsyncStream. AsyncStreams también proporciona un control de excepciones elegante, propiedades para ajustar el rendimiento y el comportamiento cuando se desee y, como BetterBufferedStreams, búsqueda eficiente. AlternateStreams le permite leer, escribir, eliminar, crear y enumerar secuencias de datos alternativas (ADS) en un archivo NTFS. En NTFS, cada archivo tiene una secuencia "main" unnamed (esta es la que manipulan las clases de E/S de archivos del Framework), así como cero o más "alternate" secuencias con nombre; por ejemplo, Internet Explorer utiliza una secuencia alternativa denominada "Zone.Identifier" para registrar de qué zona de seguridad procede un archivo descargado. Además de almacenar convenientemente metadatos, también se pueden utilizar para crear "almacenamiento compuesto" para los datos de la aplicación; en lugar, por ejemplo, serializar secuencialmente diez objetos en la secuencia "main" fie (que requiere que todo el archivo se reescriba si hay alguno, pero el último objeto cambia) cada objeto se puede serializar en su propia secuencia alternativa modificable individualmente.