/// <summary>
 /// 中文分词词语集合写入文本文件
 /// </summary>
 private unsafe static void writeTxtFile()
 {
     string[] words = Words;
     using (TmphUnmanagedStream wordStream = new TmphUnmanagedStream())
     {
         *(int*)wordStream.Data = words.Length;
         wordStream.Unsafer.AddLength(sizeof(int));
         foreach (string word in words)
         {
             wordStream.Write(word);
             wordStream.Write((char)0);
         }
         TmphSubArray<byte> data = IO.Compression.TmphStream.Deflate.GetCompress(wordStream.GetArray(), 0);
         using (FileStream fileStream = new FileStream(Laurent.Lee.CLB.Config.TmphSearch.Default.WordTxtFileName, FileMode.Create, FileAccess.Write, FileShare.None))
         {
             fileStream.Write(data.Array, data.StartIndex, data.Count);
         }
     }
 }
 /// <summary>
 ///     获取解压数据
 /// </summary>
 /// <returns>解压数据</returns>
 public unsafe TmphSubArray<byte> Get(TmphMemoryPool memoryPool)
 {
     if (memoryPool == null)
     {
         var data = TmphUnmanagedPool.StreamBuffers.Get();
         try
         {
             using (dataStream = new TmphUnmanagedStream(data.Byte, TmphUnmanagedPool.StreamBuffers.Size))
             {
                 get();
                 return new TmphSubArray<byte>(dataStream.GetArray());
             }
         }
         finally
         {
             TmphUnmanagedPool.StreamBuffers.Push(ref data);
         }
     }
     else
     {
         var data = memoryPool.Get();
         try
         {
             fixed (byte* dataFixed = data)
             {
                 using (dataStream = new TmphUnmanagedStream(dataFixed, data.Length))
                 {
                     get();
                     if (dataStream.Data == dataFixed)
                     {
                         var TmphBuffer = data;
                         data = null;
                         return TmphSubArray<byte>.Unsafe(TmphBuffer, 0, dataStream.Length);
                     }
                     return new TmphSubArray<byte>(dataStream.GetArray());
                 }
             }
         }
         finally
         {
             memoryPool.Push(ref data);
         }
     }
 }