Bu makale makine çevirisi ayna makalesidir, orijinal makaleye geçmek için lütfen buraya tıklayın.

Görünüm: 19962|Yanıt: 0

[Kaynak] SqlConnection nasıl doğru kullanılır, SqlConnection iş parçacığı güvenli mi?

[Bağlantıyı kopyala]
Yayınlandı 19.11.2016 08:46:14 | | |
Makaleye verilen bağlantı şöyledir:

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

1: SqlConnection iş başlığı için güvenli mi?

Çok iş parçacıklı bir ortamda bir Sql ifadesi çalıştırmak için Bağlantı kullanmanınGüvenli değilHedef.

SqlConnection iş başlığı güvenli değildir, yani çoklu iş parçacığı mutlaka bir sorun olacaktır.
Aslında, .net otomatik olarak bağlantı havuzu yönetimini sağlar, bağlantı dizisi aynı olduğu sürece (tamamen aynı olmalı), aynı havuzda olur, açık ve kapalı aslında havuzdan bir bağlantı alır ve bağlantıyı havuza geri koyar, bu da performans sorunlarına yol açmaz. Bu nedenle, her bağlantı açıldıktan sonra, bağlantının diğer programların kullanabileceği havuza geri dönebilmesi için mümkün olan en kısa sürede kapatılmalıdır.



2: İnsanlar neden hala yukarıdaki yazma yöntemini kullanarak Bağlantılar yaratıyor?

Bence birden fazla Bağlantı oluşturmanın zaman alıcı olduğunu ve birden fazla Bağlantının hafıza aldığını, performansı etkilediğini vs. düşünebilirler.


3: Her yeni SqlConnection bellek ve kaynak alıyor mu, performansı mı etkiler?

Bu kör düşünme, kör endişe.

Çünkü"Birden fazla bağlantı oluşturmak" mutlaka birden fazla yeni veritabanı bağlantısı oluşturmazVeritabanı bağlantısı değerli bir kaynaktır; MS SQL Server açısından bu değerli kaynak dahili olarak optimize edilir ve bağlantı yeniden kullanılır.

Bağlantı havuzu .net tarafından sağlanır, bağlantı dizisinde bir Havuzlama özelliği vardır, varsayılan doğrudur, yani bağlantı havuzu varsayılan olarak açıktır, bunun SQL sunucusuyla ilgisi yoktur, bağlantı dizisine Pooling=false yazarsanız, bağlantı havuzu yoktur, bu tamamen . .NET optimizasyonu.



Aynı veritabanı bağlantısını birden fazla iş parçacığında kullanmanın sonuçlarını araştırmak
Makale bağlantısı: http://www.th7.cn/Program/java/201503/415005.shtml

Özet: Çok iş parçacıklı bir ortamda, tek bir bağlantı kullanmak, bağlantı iş parçacığı güvenli işleme olmadan işlem karışıklığına yol açabilir.... JDBC işlemlerinin kullanımını etkiler...




Önceki:javascrip{filter}t:history.go() ile History.back() arasındaki fark.
Önümüzdeki:C# SQL Veritabanlarına Bağlanma Yaygın bağlantı dizileri
Feragatname:
Code Farmer Network tarafından yayımlanan tüm yazılım, programlama materyalleri veya makaleler yalnızca öğrenme ve araştırma amaçları içindir; Yukarıdaki içerik ticari veya yasa dışı amaçlarla kullanılamaz, aksi takdirde kullanıcılar tüm sonuçları ödemelidir. Bu sitedeki bilgiler internetten alınmakta olup, telif hakkı anlaşmazlıklarının bu siteyle hiçbir ilgisi yoktur. Yukarıdaki içeriği indirmeden sonraki 24 saat içinde bilgisayarınızdan tamamen silmelisiniz. Programı beğendiyseniz, lütfen orijinal yazılımı destekleyin, kayıt satın alın ve daha iyi orijinal hizmetler alın. Herhangi bir ihlal olursa, lütfen bizimle e-posta yoluyla iletişime geçin.

Mail To:help@itsvse.com