/
vshmidt
/
masstransit
Обзор
Документация
Войти
/
vshmidt
/
masstransit
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
develop
src/MassTransit/Caching/Internals/IBucketNode.cs
44 строки
1 KB
Chris Patterson
Integration of all external packages into MassTransit, split out into Abstractions, Middleware, and the core MassTransit assembly.
22 янв 2022, 18:24
22 янв 2022, 18:24
b5b4f50
Код
Авторство
О чём код?
namespace MassTransit.Caching.Internals { public interface IBucketNode<TValue> : INode<TValue> where TValue : class { /// <summary> /// The node's bucket /// </summary> Bucket<TValue> Bucket { get; } /// <summary> /// Returns the next node in the bucket /// </summary> IBucketNode<TValue> Next { get; } /// <summary> /// Puts the node's bucket, once the value is resolved, so that the node /// can be tracked. /// </summary> /// <param name="bucket"></param> /// <param name="next"></param> void SetBucket(Bucket<TValue> bucket, IBucketNode<TValue> next); /// <summary> /// Assigns the node to a new bucket, but doesn't change the next node /// until it's cleaned up /// </summary> /// <param name="bucket"></param> void AssignToBucket(Bucket<TValue> bucket); /// <summary> /// Forcibly evicts the node by setting the internal state to /// nothing. /// </summary> void Evict(); /// <summary> /// Remove the node from the bucket, and return the next node /// </summary> /// <returns></returns> IBucketNode<TValue> Pop(); } }