SharePoint Community Sverige

Jag har otur när jag tänker, kan någon hjälpa J

 

Om jag vill använda cache för webbapplikationen använder jag httpcontext.cache.add. Best practice säger att jag skall använda lock för att göra cacheobjektet trådsäkert. Mister jag inte själva syftet med spara på performence om jag skall skapa ett cacheobjekt för varje tråd?

 

Ursäkta svengelskan.

Taggar: Cahce

Gör ett inlägg på det här

Inlägg i den här diskussionen

Ibland har jag otur när jag ska minnas, men jag tror det här ska stämma:

Det beror väl på om du kommer att skapa en flertrådad applikation eller inte. Om du har flera trådar som ska jobba mot samma cache objekt så måste du låsa ("lock") objektet för att undvika trådkollisioner.

Nu var det ett tag sedan jag satt med flera trådar i luften men jag vill minnas att du låser objekt för en specifik tråd i taget när stråden är klar släpper den chache objektet och nästa tråd får tillgång till det, så du kan nöja dig med ett objekt även om du låser det.

Tar det här ur minnet ska kolla mina papper när jag kommer tebax till kontoret.
//Petter

Gör ett inlägg på det här

Det stämmer, skall du lagra objekt i cachen (tex en egen klass) så måste du se till att den blir trådsäker, eftersom flera trådar kan anropa cachen och få tag på objektet.
/WW

Gör ett inlägg på det här

Cache objekt i httpcontext är trådsäkra, så det är nog inte av den anledning man skall göra en lock.

Gör ett inlägg på det här

Cache is king, fast jag är inte king på cache.
Åkte på en riktigt blåsning när jag försökte nollställa cacheobject via ItemAdded httpcontext funkar dåligt där, httpruntime.cache tror jag det var som räddade mig.

Gör ett inlägg på det här

RSS

© 2010   Skapad av Andreas Kviby   Powered by .

Emblem  |  Rapportera en händelse  |  Användarvillkor