# ChronologicalEvictionStrategy.ChronologicalEvictionStrategy(ILogger, TimePurgePredicate, ICacheMonitor?, TimeSpan?)

[Type overview](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.streams.common.chronologicalevictionstrategy/) | [Constructors](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.streams.common.chronologicalevictionstrategy/constructors/)

[Source](https://github.com/dotnet/orleans/blob/b7a9e3e1c9c54b3cec3a467c5734bf7744541bcf/src/Orleans.Streaming/Common/PooledCache/ChronologicalEvictionStrategy.cs#L31-L47)

```csharp
public ChronologicalEvictionStrategy(ILogger logger, TimePurgePredicate timePurage, ICacheMonitor? cacheMonitor, TimeSpan? monitorWriteInterval)
```

Initializes a new instance of the [ChronologicalEvictionStrategy](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.streams.common.chronologicalevictionstrategy/) class.

### Parameters

- `logger` (`ILogger`): The logger.
- `timePurage` (`TimePurgePredicate`): The time-based purge predicate.
- `cacheMonitor` (`ICacheMonitor?`): The cache monitor.
- `monitorWriteInterval` (`TimeSpan?`): "Interval to write periodic statistics. Only triggered for active caches.
