SpinLock.TryEnter 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.
Upaya untuk memperoleh kunci dengan cara yang dapat diandalkan, sehingga bahkan jika pengecualian terjadi dalam panggilan metode, lockTaken
dapat diperiksa dengan andal untuk menentukan apakah kunci diperoleh.
Overload
TryEnter(Boolean) |
Upaya untuk memperoleh kunci dengan cara yang dapat diandalkan, sehingga bahkan jika pengecualian terjadi dalam panggilan metode, |
TryEnter(Int32, Boolean) |
Upaya untuk memperoleh kunci dengan cara yang dapat diandalkan, sehingga bahkan jika pengecualian terjadi dalam panggilan metode, |
TryEnter(TimeSpan, Boolean) |
Upaya untuk memperoleh kunci dengan cara yang dapat diandalkan, sehingga bahkan jika pengecualian terjadi dalam panggilan metode, |
TryEnter(Boolean)
- Sumber:
- SpinLock.cs
- Sumber:
- SpinLock.cs
- Sumber:
- SpinLock.cs
Upaya untuk memperoleh kunci dengan cara yang dapat diandalkan, sehingga bahkan jika pengecualian terjadi dalam panggilan metode, lockTaken
dapat diperiksa dengan andal untuk menentukan apakah kunci diperoleh.
public:
void TryEnter(bool % lockTaken);
public void TryEnter (ref bool lockTaken);
member this.TryEnter : bool -> unit
Public Sub TryEnter (ByRef lockTaken As Boolean)
Parameter
- lockTaken
- Boolean
Benar jika kunci diperoleh; jika tidak, salah.
lockTaken
harus diinisialisasi ke false sebelum memanggil metode ini.
Pengecualian
Argumen lockTaken
harus diinisialisasi ke false sebelum memanggil TryEnter.
Pelacakan kepemilikan utas diaktifkan, dan utas saat ini telah memperoleh kunci ini.
Keterangan
Tidak seperti Enter, TryEnter tidak akan memblokir menunggu kunci tersedia. Jika kunci tidak tersedia saat TryEnter dipanggil, kunci akan segera kembali tanpa berputar lebih lanjut.
Lihat juga
- SpinLock
- Cara: Gunakan SpinLock untuk Sinkronisasi Tingkat-Rendah
- Cara: Mengaktifkan Mode Thread-Tracking di SpinLock
Berlaku untuk
TryEnter(Int32, Boolean)
- Sumber:
- SpinLock.cs
- Sumber:
- SpinLock.cs
- Sumber:
- SpinLock.cs
Upaya untuk memperoleh kunci dengan cara yang dapat diandalkan, sehingga bahkan jika pengecualian terjadi dalam panggilan metode, lockTaken
dapat diperiksa dengan andal untuk menentukan apakah kunci diperoleh.
public:
void TryEnter(int millisecondsTimeout, bool % lockTaken);
public void TryEnter (int millisecondsTimeout, ref bool lockTaken);
member this.TryEnter : int * bool -> unit
Public Sub TryEnter (millisecondsTimeout As Integer, ByRef lockTaken As Boolean)
Parameter
- millisecondsTimeout
- Int32
Jumlah milidetik untuk menunggu, atau Infinite (-1) untuk menunggu tanpa batas waktu.
- lockTaken
- Boolean
Benar jika kunci diperoleh; jika tidak, salah.
lockTaken
harus diinisialisasi ke false sebelum memanggil metode ini.
Pengecualian
millisecondsTimeout
adalah angka negatif selain -1, yang menunjukkan waktu habis yang tak terbatas.
Argumen lockTaken
harus diinisialisasi ke false sebelum memanggil TryEnter.
Pelacakan kepemilikan utas diaktifkan, dan utas saat ini telah memperoleh kunci ini.
Keterangan
Tidak seperti Enter, TryEnter tidak akan memblokir tanpa batas waktu menunggu kunci tersedia. Ini akan memblokir hingga kunci tersedia atau sampai telah kedaluwarsa millisecondsTimeout
.
Lihat juga
- SpinLock
- Cara: Gunakan SpinLock untuk Sinkronisasi Tingkat-Rendah
- Cara: Mengaktifkan Mode Thread-Tracking di SpinLock
Berlaku untuk
TryEnter(TimeSpan, Boolean)
- Sumber:
- SpinLock.cs
- Sumber:
- SpinLock.cs
- Sumber:
- SpinLock.cs
Upaya untuk memperoleh kunci dengan cara yang dapat diandalkan, sehingga bahkan jika pengecualian terjadi dalam panggilan metode, lockTaken
dapat diperiksa dengan andal untuk menentukan apakah kunci diperoleh.
public:
void TryEnter(TimeSpan timeout, bool % lockTaken);
public void TryEnter (TimeSpan timeout, ref bool lockTaken);
member this.TryEnter : TimeSpan * bool -> unit
Public Sub TryEnter (timeout As TimeSpan, ByRef lockTaken As Boolean)
Parameter
- timeout
- TimeSpan
TimeSpan yang menunjukkan jumlah milidetik untuk menunggu, atau TimeSpan yang mewakili -1 milidetik untuk menunggu tanpa batas waktu.
- lockTaken
- Boolean
Benar jika kunci diperoleh; jika tidak, salah.
lockTaken
harus diinisialisasi ke false sebelum memanggil metode ini.
Pengecualian
timeout
adalah angka negatif selain -1 milidetik, yang mewakili batas waktu tak terbatas -atau- batas waktu lebih besar dari Int32.MaxValue milidetik.
Argumen lockTaken
harus diinisialisasi ke false sebelum memanggil TryEnter.
Pelacakan kepemilikan utas diaktifkan, dan utas saat ini telah memperoleh kunci ini.
Keterangan
Tidak seperti Enter, TryEnter tidak akan memblokir tanpa batas waktu menunggu kunci tersedia. Ini akan memblokir hingga kunci tersedia atau sampai telah kedaluwarsa timeout
.
Lihat juga
- SpinLock
- Cara: Gunakan SpinLock untuk Sinkronisasi Tingkat-Rendah
- Cara: Mengaktifkan Mode Thread-Tracking di SpinLock