public void WriteItem(string name, Action<Stream> callback) { var dict = new Dictionary<string, Stream>(); var r = new RangBuffer(); dict[name] = r.R; if (first) { first = false; svc.CompressionMode = SevenZip.CompressionMode.Create; } else { svc.CompressionMode = SevenZip.CompressionMode.Append; } var task = Task.Factory.StartNew(() => { svc.CompressStreamDictionary(dict, path); }); try { callback(r.W); } finally { r.W.Dispose(); } task.Wait(); }
public void WriteItem(string name, Action <Stream> callback) { var dict = new Dictionary <string, Stream>(); var r = new RangBuffer(); dict[name] = r.R; if (first) { first = false; svc.CompressionMode = SevenZip.CompressionMode.Create; } else { svc.CompressionMode = SevenZip.CompressionMode.Append; } var task = Task.Factory.StartNew(() => { svc.CompressStreamDictionary(dict, path); }); try { callback(r.W); } finally { r.W.Dispose(); } task.Wait(); }
protected override void Dispose(bool disposing) { if (disposing && _r != null) { _r.CloseRead(); _r = null; } base.Dispose(disposing); }
private long _total; // bytes read so far public RStream(RangBuffer r) { this._r = r; }
protected override void Dispose(bool disposing) { if (disposing && _r != null) { _r.CloseWrite(); _r = null; } base.Dispose(disposing); }
private long _total; // bytes written so far #endregion Fields #region Constructors public WStream(RangBuffer r) { this._r = r; }
private long _total; // bytes read so far public RStream(RangBuffer r) { _r = r; }