04/07-2006 | Henrik Farnø

En lille advarsel om TimeSpan.Zero

På Cache objektet i NET 1.1 og Net 2.0 findes der en metode på cacheobjektet, der hedder


public Object Add (
    string key,
    Object value,
    CacheDependency dependencies,
    DateTime absoluteExpiration,
    TimeSpan slidingExpiration,
    CacheItemPriority priority,
    CacheItemRemovedCallback onRemoveCallback
)


Denne metode styrer, hvor længe et objekt skal caches.
I .NET 1.1 dokumentationen findes der adskillige eksempler på,
at parameteren slidingExpiration sættes til TimeSpan.Zero. Envidere siger dokumentation, at System.Web.Caching.Cache.NoSlidingExpiration = TimeSpan.Zero
Brug System.Web.Caching.Cache.NoSlidingExpiration! TimeSpan.Zero gav os memoryleaks i IIS 6.0 (.NET 1.1) som vi måtte slide med en hel dag.

Det virker ulogisk, men vi var istand til at reproducere fejlen med en ændring i én linie kode.

Af: Henrik Farnø
Kategorier: Teknologi

Der er lukket for kommentarer.