Avatar billede Simon Praktikant
06. februar 2007 - 16:23 Der er 3 kommentarer og
1 løsning

Flere brugere om samme ressurcer

Jeg er ved at lave en ASP.NET web side som skal give en række brugere adgang til en række ressourcer(f.eks. filer). Dog må hver enkelt ressource kun benyttes af én bruger af gangen. For hver bruger skal det være muligt at se om en given ressource allerede er i brug af en anden bruger.

Umiddelbart kunne dette løses ved at oprette en slags mutex for hver ressource i en database eller fil.

Men er det ikke muligt at styre dette i selve applicationen? Kan flere samtidige bruger benytte de samme variabler (ligesom Session variables for én bruger)? Og findes der nogen tråd-beskyttelse her?
Avatar billede arne_v Ekspert
07. februar 2007 - 01:38 #1
du kan godt synkronisere mellem forskellige tråde alias requests med den
normale lock mekanisme

men umiddelbart vil jeg tro at du har behov for at synkronisere mellem
"editerings sessioner" altså fra en start request til en slut request og
så duer lock ikke

umiddelbart lyder database ret oplagt
Avatar billede Simon Praktikant
07. februar 2007 - 08:37 #2
Jeg forestiller mig at når man vil editere en fil via websiden, låses denne ved at systemet tilføjer en record i Application[] hvor filnavn, bruger og tidspunkt angives.

Som default skal denne så fungere som lås i en halv time. Sålænge en fil er låst kan andre ikke få lov at editere i den samme fil. Når brugeren som har editeret filen gemmer sine ændringer og afslutter editering fjernes låsen fra Application[]. Nu kan andre også tilgå denne.

For at to brugere ikke samtidig skulle oprette en lås på den samme fil tænker jeg at man kan gøre noget a la:

lock(Application)
{
// se om fil er låst i Application[]
// hvis ikke så lås den
}

Hvad mener du om dette koncept?
Avatar billede arne_v Ekspert
07. februar 2007 - 19:01 #3
det kan du godt

men overvej hvad der kan ske, hvis du genstarter din web app midtvejs

det er derfor jeg foreslaar database
Avatar billede arne_v Ekspert
25. marts 2007 - 16:04 #4
all set ?
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester



IT-JOB

Danske Commodities A/S

IT systems developer

Netcompany A/S

IT Manager

Continia Software A/S

Student Master Data Assistant

Unik System Design A/S

Teamleder til Hosting og Support