Hallå! Hej Fredrik, Hm, men vänta... Hej, Tack, Mikael!Read/Write HttpContext.Current.Application från olika users samtidigt
Har en fundering...
Vad händer om två olika users försöker skriva/läsa till en applikationsvariabel (HttpContext.Current.Application) samtidigt?
Jag använder en applikationsvariabel för en counter. Låt säga att en user vill hämta värdet i variablen samtidigt som en annan user (annat sessionsID) vill skriva ett nytt värde. Är det någon som vet vad som händer, vem får prio, får någon vänta etc, etc.
Läs/Skriv händer endast om Session.IsNewSession = True.
Sannolikheten att det inträffar är relativt liten, men jag har kanske 20-30 requests / sekund, så "risken" finns ju.
Tack på förhand,
FredrikSv: Read/Write HttpContext.Current.Application från olika users samtidigt
Har jag missförstått dig? Är det inte bara att ha Lock resp. UnLock?
ex.
...
Application.Lock;
Application.Add("nyckel", "ett värde");
Application.UnLock;
...
/m
Sv:Read/Write HttpContext.Current.Application från olika users samtidigt
Om jag vill läsa ett värde från Application om den är satt som Application.Lock, vad händer då? Kommer jag åt den?
Är det samma princip som "SELECT * FROM TBL_MYTABLE (NOLOCK)"? Då kan jag läsa från tabellen samtidigt som någon skriver/ändrar i den.
/FredrikSv: Read/Write HttpContext.Current.Application från olika users samtidigt
Jag är inte riktigt säker, men vi säger att två personer går in på siten samtidigt...
... så körs det för den första först, sen så körs det för den andra. Så det inte "krockar".
Nu får någon rätta mig ;-)
/mSv:Read/Write HttpContext.Current.Application från olika users samtidigt
Jag hittade också en länk på W3 School:
[url]http://www.w3schools.com/asp/met_lock_unlock.asp[/url]