Ejemplo n.º 1
0
 private void AutoFlushUnacknowledgedBatchPointers(bool flushAnyway = false)
 {
     CheckIfPointerIsStoredAsAcknowledged();
     lock (BatchUnacknowledgedConsumerMessagesToMerge)
     {
         if (flushAnyway == false)
         {
             // Flush unacknowledged message
             if (BatchUnacknowledgedConsumerMessagesToMerge.Count() >= _partitionConfiguration.SizeInMemory)
             {
                 var batchToInsert = new List <Model.Entities.ConsumerMessage>(BatchUnacknowledgedConsumerMessagesToMerge.Values);
                 ConsumerPointerContext.BulkInsertOrUpdate(BatchUnacknowledgedConsumerMessagesToMerge.Values.ToList());
                 RemoveRegisteredFromDictionary(BatchUnacknowledgedConsumerMessagesToMerge, batchToInsert);
             }
         }
         else
         {
             // Flush unacknowledged message
             if (BatchUnacknowledgedConsumerMessagesToMerge.Count() != 0)
             {
                 var batchToInsert = new List <Model.Entities.ConsumerMessage>(BatchUnacknowledgedConsumerMessagesToMerge.Values);
                 ConsumerPointerContext.BulkInsertOrUpdate(BatchUnacknowledgedConsumerMessagesToMerge.Values.ToList());
                 RemoveRegisteredFromDictionary(BatchUnacknowledgedConsumerMessagesToMerge, batchToInsert);
             }
         }
     }
 }
Ejemplo n.º 2
0
 private void AutoFlushAcknowledgedBatchPointers()
 {
     lock (BatchAcknowledgedConsumerMessagesToMerge)
     {
         if (ThreadingPool.AreThreadsRunning == true)
         {
             if (BatchAcknowledgedConsumerMessagesToMerge.Count >= _partitionConfiguration.SizeInMemory)
             {
                 var batchToInsert = new List <Model.Entities.ConsumerMessage>(BatchAcknowledgedConsumerMessagesToMerge.Values);
                 ConsumerPointerContext.BulkInsertOrUpdate(batchToInsert);
                 RemoveRegisteredFromDictionary(BatchAcknowledgedConsumerMessagesToMerge, batchToInsert);
             }
         }
         else
         {
             if (BatchAcknowledgedConsumerMessagesToMerge.Count != 0)
             {
                 var batchToInsert = new List <Model.Entities.ConsumerMessage>(BatchAcknowledgedConsumerMessagesToMerge.Values);
                 ConsumerPointerContext.BulkInsertOrUpdate(batchToInsert);
                 RemoveRegisteredFromDictionary(BatchAcknowledgedConsumerMessagesToMerge, batchToInsert);
             }
         }
     }
 }