Список C #, где элементы имеют TTL

для простого примера, я хотел бы иметь список строк. Каждый элемент в списке должен «истекать» через 5 минут после добавления его в список. Хотя не может быть легко, встроенного способа сделать это, я хотел бы получить структуру данных, чья API ощущается, что «просто работает».

Вы можете использовать его следующим образом:

var now = DateTime.now();
var list = new ListWithTTL<string>();
list.add("Bob", now);
list.add("Joe", now.AddMinutes(1));
list.add("Tom", now.AddMinutes(2));
list.add("Tim", now.AddMinutes(2));

Проверка элементов немедленно принесет

["Bob", "Joe", "Tom", "Tim"]

через несколько минут после того, как он должен дать

["Tom", "Tim"]

в конечном итоге, список должен быть пустым.

8
задан Larsenal 15 September 2011 в 18:43
поделиться