Beispiel #1
0
            public int Compare(OrderedKey <T> x, OrderedKey <T> y)
            {
                int result = _keyComparer.Compare(x.Key, y.Key);

                if (result == 0)
                {
                    result = -1 * _orderComparer.Compare(x.Order, y.Order); //min first - FIFO
                }
                return(result);
            }
Beispiel #2
0
 public void ApplyOrderingValues(string uniqueName, OrderedKey[] orderedKeys)
 {
     var index = _indexes[uniqueName];
     index.Storage.ApplyOrderingValues(orderedKeys);
 }
Beispiel #3
0
        public void Enqueue(TPriority priority, TValue value)
        {
            var key = new OrderedKey <TPriority>(priority, _insertionOrderCounter++);

            _priorityQueue.Enqueue(key, value);
        }