Denna artikel är en spegelartikel om maskinöversättning, klicka här för att hoppa till originalartikeln.

Utsikt: 20549|Svar: 0

[Källa] Hur använder man SqlConnection korrekt, är SqlConnection-tråden säker?

[Kopiera länk]
Publicerad på 2016-11-19 08:46:14 | | |
Länken till artikeln är följande:

http://www.cnblogs.com/LoveJenny/archive/2011/10/31/2229738.html

1: Är SqlConnection trådsäkert?

Det kan vara känt att använda en Connection för att köra en SQL-sats i en multitrådad miljö ärInte säkertMål.

SqlConnection är inte trådsäker, så multitrådning är oundvikligen ett problem.
Faktum är att .net automatiskt tillhandahåller anslutningspoolhantering, så länge anslutningssträngen är densamma (måste vara exakt densamma), kommer den att vara i samma pool, öppna och stängda tar faktiskt en anslutning från poolen och lägger tillbaka anslutningen i poolen, vilket inte orsakar prestandaproblem. Därför bör varje anslutning stängas så snart som möjligt efter användning, så att anslutningen kan återföras till poolen för andra program att använda.



2: Varför använder folk fortfarande ovanstående skrivmetod för att skapa Connections?

Jag tror att de kanske tror att det tar tid att skapa flera anslutningar, och att flera anslutningar tar upp minne, påverkar prestandan, osv.


3: Tar varje ny SqlConnection upp minne och resurser, vilket påverkar prestandan?

Det här är blindt tänkande, blind oro.

För att"Att skapa flera anslutningar" skapar inte nödvändigtvis flera nya databasanslutningarDatabasanslutning är en värdefull resurs för MS SQL Server, denna värdefulla resurs kommer att optimeras internt och anslutningen kommer att återanvändas.

Connection pool tillhandahålls av .net, det finns en Pooling-egenskap i anslutningssträngen, standarden är sann, det vill säga, anslutningspoolen är aktiverad som standard, detta har inget med SQL Server att göra, om du skriver Pooling=false i anslutningssträngen finns det ingen anslutningspool, detta är helt och hållet . .NET-optimering.



Att utforska konsekvenserna av att använda samma databasanslutning i flera trådar
Artikellänk: http://www.th7.cn/Program/java/201503/415005.shtml

Sammanfattning: I en flertrådad miljö kan användning av en enda anslutning orsaka transaktionsförvirring utan trådsäker hantering av anslutningen.... Påverkar användningen av JDBC-transaktioner...




Föregående:javascrip{filter}t:skillnaden mellan history.go() och History.back().
Nästa:C# Anslutning till SQL-databaser Vanliga anslutningssträngar
Friskrivning:
All programvara, programmeringsmaterial eller artiklar som publiceras av Code Farmer Network är endast för lärande- och forskningsändamål; Ovanstående innehåll får inte användas för kommersiella eller olagliga ändamål, annars kommer användarna att bära alla konsekvenser. Informationen på denna sida kommer från internet, och upphovsrättstvister har inget med denna sida att göra. Du måste helt radera ovanstående innehåll från din dator inom 24 timmar efter nedladdning. Om du gillar programmet, vänligen stöd äkta programvara, köp registrering och få bättre äkta tjänster. Om det finns något intrång, vänligen kontakta oss via e-post.

Mail To:help@itsvse.com