Just nu i M3-nätverket
Jump to content

Set connection = nothing, varför?


Sasja

Recommended Posts

Varför ska man egentligen sätta

[color="#0000ff"]Set[/color] connection = [color="#0000ff"]Nothing[/color]

När man använt connection som sin databaskoppling? Man tömmer ju inte variabler, så varför ska man tömma en "set connection"?

 

Link to comment
Share on other sites

Varför ska man egentligen sätta

 

Set connection = Nothing

 

När man använt connection som sin databaskoppling? Man tömmer ju inte variabler, så varför ska man tömma en "set connection"?

 

 

Ingen som kan förklara det för lilla mig? =)

 

Link to comment
Share on other sites

När du gör set variabel=nothing i VB/ASP så räknas en sk referensräknare ner på objektet. Referensräknaren håller reda på hur många som använder ett objekt och när alla har släppt objektet så når referensräknaren 0 och då kan objektet släppa alla resurser den håller i.

 

Egentligen spelar det ingen roll om du sätter variabeln till nothing eller till något annat, det är genom att du låter variabeln släppa den referens den håller till din databaskoppling som du, något förenklat, extra tydligt talar om att du inte längre bryr dig om din databaskoppling. Om ingen annan heller bryr sig om den (dvs, om du inte har fler variabler som innehåller samma koppling) så kan anslutningen lämnas tillbaka.

 

Förr eller senare görs det nog ändå (och det är därför det inte spelar någon roll för de flesta andra variabler) men iom att du tvingar fram det hela så minskar du risken att du drabbas av problem för att du t.ex bara får ha ett visst antal samtidiga anslutninar mot databasen osv.

 

Ovanstående skrivet ur ett rent VB-perspektiv (influerat av hur "inner workings" av COM fungerar). Det är möjligt att det faktiskt inte alls spelar någon roll i ASP längre, det vet jag inget om.

 

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.



×
×
  • Create New...