BetterStreams 1.0

Licence: Essai gratuit ‎Taille du fichier: 618.50 KB
‎Note des utilisateurs: 3.0/5 - ‎1 ‎Votes

Sur BetterStreams

.Bibliothèque nette composée de trois classes pour l’I/O asynchrone simplifié (AsyncStream), utilisant d’autres flux de données (AlternateStreams), et un jet d’eau et une recherche efficaces (BetterBufferedStream). BetterStreams peut facilement améliorer les performances des applications nouvelles ou existantes, parfois de façon spectaculaire, avec aussi peu qu’une seule ligne de modification du code. AsyncStream enveloppe un flux existant et fournit i/o asynchrone via les méthodes standard Read(), ReadByte(), Write () et WriteByte() ; si vous êtes appelé directement sur le flux enveloppé, il faudrait attendre l’I/O jusqu’à l’appareil sous-jacent (comme un disque), mais l’AsyncStream remplit ou rince automatiquement son tampon interne à partir ou vers le flux enveloppé à l’aide d’un thread d’arrière-plan et ne bloquera jamais tant que des octets suffisants seront disponibles dans le tampon. Même si votre logique d’application est déjà construite autour d’I/O synchrones, sa fabrication asynchrone ne nécessite généralement rien de plus que d’envelopper le flux d’origine dans un AsyncStream. AsyncStreams offre également une manipulation d’exception élégante, des propriétés pour affiner les performances et le comportement lorsque vous le souhaitez, et, comme BetterBufferedStreams, une recherche efficace. AlternateStreams vous permet de lire, écrire, supprimer, créer et énumérer d’autres flux de données (ADS) dans un fichier NTFS. En vertu de NTFS, chaque fichier a un flux "main" sans nom (c’est celui que les classes I/O du Framework manipulent) ainsi que zéro ou plus "alternate" flux nommés; par exemple, Internet Explorer utilise un autre flux nommé "Zone.Identifier" pour enregistrer la zone de sécurité d’où vient un fichier téléchargé. En plus de stocker commodément les métadonnées, elles peuvent également être utilisées pour créer "compound storage" pour les données d’application; au lieu, par exemple, de sérialiser séquentiellement dix objets au flux "main" fie (exigeant que l’ensemble du fichier soit réécrit s’il y a lieu, mais le dernier objet change), chaque objet peut être sérialisé à son propre flux alternatif modifiable individuellement.