Kelas cancellation_token
Kelas cancellation_token
mewakili kemampuan untuk menentukan apakah beberapa operasi telah diminta untuk membatalkan. Token tertentu dapat dikaitkan dengan task_group
, , structured_task_group
atau task
untuk memberikan pembatalan implisit. Ini juga dapat dijajaki untuk pembatalan atau memiliki panggilan balik yang terdaftar untuk jika dan kapan terkait cancellation_token_source
dibatalkan.
Sintaks
class cancellation_token;
Anggota
Konstruktor Publik
Nama | Deskripsi |
---|---|
cancellation_token | |
~cancellation_token Destructor |
Metode Publik
Nama | Deskripsi |
---|---|
deregister_callback | Menghapus panggilan balik yang sebelumnya terdaftar melalui register metode berdasarkan objek yang cancellation_token_registration dikembalikan pada saat pendaftaran. |
is_cancelable | Mengembalikan indikasi apakah token ini dapat dibatalkan atau tidak. |
is_canceled | Mengembalikan true jika token telah dibatalkan. |
Tidak ada | Mengembalikan token pembatalan yang tidak pernah tunduk pada pembatalan. |
register_callback | Mendaftarkan fungsi panggilan balik dengan token. Jika dan ketika token dibatalkan, panggilan balik akan dilakukan. Perhatikan bahwa jika token sudah dibatalkan pada titik di mana metode ini dipanggil, panggilan balik akan segera dilakukan dan sinkron. |
Operator Publik
Nama | Deskripsi |
---|---|
operator!= | |
operator= | |
operator== |
Hierarki Warisan
cancellation_token
Persyaratan
Header: pplcancellation_token.h
Namespace: konkurensi
~cancellation_token
~cancellation_token();
cancellation_token
cancellation_token(const cancellation_token& _Src);
cancellation_token(cancellation_token&& _Src);
Parameter
_Src
cancellation_token yang akan disalin atau dipindahkan.
deregister_callback
Menghapus panggilan balik yang sebelumnya terdaftar melalui register
metode berdasarkan objek yang cancellation_token_registration
dikembalikan pada saat pendaftaran.
void deregister_callback(const cancellation_token_registration& _Registration) const;
Parameter
_Pendaftaran
Objek cancellation_token_registration
yang sesuai dengan panggilan balik yang akan didaftarkan. Token ini sebelumnya harus dikembalikan dari panggilan ke register
metode .
is_cancelable
Mengembalikan indikasi apakah token ini dapat dibatalkan atau tidak.
bool is_cancelable() const;
Tampilkan Nilai
Indikasi apakah token ini dapat dibatalkan atau tidak.
is_canceled
Mengembalikan true
jika token telah dibatalkan.
bool is_canceled() const;
Tampilkan Nilai
Nilai true
jika token telah dibatalkan; jika tidak, nilai false
.
tidak ada
Mengembalikan token pembatalan yang tidak pernah tunduk pada pembatalan.
static cancellation_token none();
Tampilkan Nilai
Token pembatalan yang tidak dapat dibatalkan.
operator!=
bool operator!= (const cancellation_token& _Src) const;
Parameter
_Src
untuk cancellation_token
membandingkan.
Tampilkan Nilai
operator=
cancellation_token& operator= (const cancellation_token& _Src);
cancellation_token& operator= (cancellation_token&& _Src);
Parameter
_Src
yang cancellation_token
akan ditetapkan.
Tampilkan Nilai
operator==
bool operator== (const cancellation_token& _Src) const;
Parameter
_Src
untuk cancellation_token
membandingkan.
Tampilkan Nilai
register_callback
Mendaftarkan fungsi panggilan balik dengan token. Jika dan ketika token dibatalkan, panggilan balik akan dilakukan. Perhatikan bahwa jika token sudah dibatalkan pada titik di mana metode ini dipanggil, panggilan balik akan segera dilakukan dan sinkron.
template<typename _Function>
::Concurrency::cancellation_token_registration register_callback(const _Function& _Func) const;
Parameter
_Fungsi
Jenis objek fungsi yang akan dipanggil kembali ketika ini cancellation_token
dibatalkan.
_Func
Objek fungsi yang akan dipanggil kembali ketika ini cancellation_token
dibatalkan.
Tampilkan Nilai
Objek cancellation_token_registration
yang dapat digunakan dalam deregister
metode untuk membatalkan pendaftaran panggilan balik yang terdaftar sebelumnya dan mencegahnya dibuat. Metode ini akan melemparkan pengecualian invalid_operation jika dipanggil pada cancellation_token
objek yang dibuat menggunakan metode cancellation_token::none .
Baca juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk