public override void Dispose()
 {
     Cache <MemoryMappedFileSegmentFactory> .Push(this);
 }