Povezava do članka je naslednja:
http://www.cnblogs.com/LoveJenny/archive/2011/10/31/2229738.html
1: Ali je SqlConnection varen za niti?
Znano je, da je uporaba povezave za izvajanje SQL stavka v večnitnem okoljuNi varnoCilj.
SqlConnection ni varen za niti, zato je večnitnost neizogibno problem. Pravzaprav .net samodejno upravlja povezovalni sklad, dokler je povezovalni niz enak (mora biti popolnoma enak), bo v istem skladu, odprtje in zapiranje dejansko vzameta povezavo iz sklada in jo vrača vanj, kar ne povzroča težav z zmogljivostjo. Zato je po odprtju vsake povezave treba povezavo čim prej po uporabi zapreti, da se povezava lahko vrne v bazen za uporabo drugih programov.
2: Zakaj ljudje še vedno uporabljajo zgornjo metodo pisanja za ustvarjanje povezav?
Mislim, da morda menijo, da je ustvarjanje več povezav časovno potratno, da več povezav porabi pomnilnik, vpliva na zmogljivost itd.
3: Ali vsak nov SqlConnection porabi pomnilnik in vire, kar vpliva na zmogljivost?
To je slepo razmišljanje, slepa skrb.
Ker"Ustvarjanje več povezav" ne pomeni nujno, da ustvari več novih povezav z bazo podatkovPovezava z bazo podatkov je dragocen vir, kar zadeva MS SQL Server, bo ta vir interno optimiziran, povezava pa ponovno uporabljena.
Povezovalni bazen zagotavlja .net, v povezavnem nizu je lastnost Pooling, privzeta je true, torej je povezovalni bazen privzeto vklopljen, to nima nobene zveze s SQL strežnikom; če v povezovalnem nizu napišete Pooling=fals, potem ni povezovalnega bazena, to je popolnoma . .NET optimizacija.
Raziskovanje posledic uporabe iste povezave z bazo podatkov v več nitih Povezava do članka: http://www.th7.cn/Program/java/201503/415005.shtml
Povzetek: V večnitnem okolju lahko uporaba ene same povezave povzroči zmedo transakcij brez varne obdelave povezave za niti ... Vpliva na uporabo JDBC transakcij...
|