Skip to content

Commit 64a5bac

Browse files
committed
feat: dispose MemoryCache
1 parent 1d71fc0 commit 64a5bac

File tree

3 files changed

+11
-2
lines changed

3 files changed

+11
-2
lines changed

LazyCache/ICacheProvider.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
namespace LazyCache
66
{
7-
public interface ICacheProvider
7+
public interface ICacheProvider : IDisposable
88
{
99
void Set(string key, object item, MemoryCacheEntryOptions policy);
1010
object Get(string key);

LazyCache/Mocks/MockCachingService.cs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -108,5 +108,9 @@ public Task<T> GetOrCreateAsync<T>(string key, Func<ICacheEntry, Task<T>> func)
108108
{
109109
return func(null);
110110
}
111+
112+
public void Dispose()
113+
{
114+
}
111115
}
112116
}

LazyCache/Providers/MemoryCacheProvider.cs

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ namespace LazyCache.Providers
66
{
77
public class MemoryCacheProvider : ICacheProvider
88
{
9-
private readonly IMemoryCache cache;
9+
internal readonly IMemoryCache cache;
1010

1111
public MemoryCacheProvider() : this(new MemoryCache(new MemoryCacheOptions()))
1212
{
@@ -41,5 +41,10 @@ public Task<T> GetOrCreateAsync<T>(string key, Func<ICacheEntry, Task<T>> factor
4141
{
4242
return cache.GetOrCreateAsync(key, factory);
4343
}
44+
45+
public void Dispose()
46+
{
47+
cache?.Dispose();
48+
}
4449
}
4550
}

0 commit comments

Comments
 (0)