예제 #1
0
 private void FlushBatchToDisk()
 {
     try
     {
         if (ThreadingPool.AreThreadsRunning == true)
         {
             if (BatchMessagesToInsert.Count >= _partitionConfiguration.SizeInMemory)
             {
                 var batchToInsert = new List <Model.Entities.Message>(BatchMessagesToInsert.Values);
                 MessageContext.BulkInsert(batchToInsert);
                 RemoveRegisteredFromBatch(batchToInsert);
             }
         }
         else
         {
             if (BatchMessagesToInsert.Count != 0)
             {
                 var batchToInsert = new List <Model.Entities.Message>(BatchMessagesToInsert.Values);
                 MessageContext.BulkInsert(batchToInsert);
                 RemoveRegisteredFromBatch(batchToInsert);
             }
         }
     }
     catch (Exception)
     {
     }
 }