DbConnection.CloseAsync Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Secara asinkron menutup koneksi ke database.
public:
virtual System::Threading::Tasks::Task ^ CloseAsync();
public virtual System.Threading.Tasks.Task CloseAsync ();
abstract member CloseAsync : unit -> System.Threading.Tasks.Task
override this.CloseAsync : unit -> System.Threading.Tasks.Task
Public Overridable Function CloseAsync () As Task
Mengembalikan
mewakili Task operasi asinkron.
Keterangan
Implementasi default metode asinkron ini mendelegasikan ke rekan sinkronnya dan mengembalikan yang selesai Task
, berpotensi memblokir utas panggilan.
Penyedia data yang mendukung pemrograman asinkron harus mengambil alih implementasi default menggunakan operasi I/O asinkron.
Metode Close dan CloseAsync mengembalikan transaksi yang tertunda. Mereka kemudian melepaskan koneksi ke kumpulan koneksi, atau menutup koneksi jika pengumpulan koneksi dinonaktifkan.
Aplikasi dapat memanggil Close atau CloseAsync lebih dari satu kali. Tidak ada pengecualian yang dihasilkan.
DbConnection Jika keluar dari cakupan, itu tidak ditutup. Oleh karena itu, Anda harus secara eksplisit menutup koneksi dengan memanggil Close
atau Dispose
, yang secara fungsional setara. Jika nilai Pooling
pengumpulan koneksi diatur ke true
atau yes
, ini juga merilis koneksi fisik.
Perhatian
Jangan menutup atau membuang DbConnection
, , DbDataReader
atau objek terkelola lainnya dalam Finalize
metode kelas Anda. Dalam finalizer, Anda hanya boleh merilis sumber daya yang tidak dikelola yang dimiliki kelas Anda secara langsung. Jika kelas Anda tidak memiliki sumber daya yang tidak dikelola, jangan sertakan metode Finalize
dalam definisi kelas Anda. Untuk informasi lebih lanjut, lihat Pengumpulan Sampah.
Metode ini disimpan dalam tugas yang mengembalikan semua pengecualian non-penggunaan yang dapat dilemparkan oleh rekan sinkron metode. Jika pengecualian disimpan ke dalam tugas yang dikembalikan, pengecualian tersebut akan dilemparkan saat tugas ditunggu. Pengecualian penggunaan, seperti ArgumentException, masih dilemparkan secara sinkron. Untuk pengecualian yang disimpan, lihat pengecualian yang dilemparkan oleh Close().