Exemple #1
0
 void DoWork5ReadCheck()
 {
     _sw.Restart();
     using (var stream = new PositionLessStreamProxy("data.btdb"))
         using (IKeyValueDB db = new KeyValueDB())
         {
             db.Open(stream, false);
             using (var trStat = db.StartTransaction())
             {
                 Console.WriteLine(trStat.CalculateStats().ToString());
             }
             using (var trCheck = db.StartTransaction())
             {
                 long pureDataLengthCheck = 0;
                 if (trCheck.FindFirstKey())
                 {
                     do
                     {
                         pureDataLengthCheck += trCheck.ReadKey().Length + trCheck.ReadValue().Length;
                     } while (trCheck.FindNextKey());
                 }
                 if (pureDataLengthCheck != 396130000)
                 {
                     throw new Exception("Bug");
                 }
             }
             using (var trStat = db.StartTransaction())
             {
                 Console.WriteLine(trStat.CalculateStats().ToString());
             }
         }
     _sw.Stop();
     Console.WriteLine("Time: {0,15}ms", _sw.Elapsed.TotalMilliseconds);
 }
Exemple #2
0
 public void ReadingStreamManaged()
 {
     using (var s = File.OpenRead(TestFileName))
         using (var p = new PositionLessStreamProxy(s, false))
         {
             Assert.Equal(1, p.Read(buff, 0, buff.Length, 0));
             Assert.Equal(11, buff[0]);
             Assert.Equal(0, p.Read(buff, 0, buff.Length, 1));
             Assert.Equal(0, p.Read(buff, 0, buff.Length, 1));
             Assert.Equal(0, p.Read(buff, 0, buff.Length, 10));
         }
 }