Kelas task_handle
Kelas task_handle
mewakili item kerja paralel individual. Ini merangkum instruksi dan data yang diperlukan untuk menjalankan pekerjaan.
Sintaks
template<
typename _Function
>
class task_handle : public ::Concurrency::details::_UnrealizedChore;
Parameter
_Fungsi
Jenis objek fungsi yang akan dipanggil untuk menjalankan pekerjaan yang diwakili oleh task_handle
objek.
Anggota
Konstruktor Publik
Nama | Deskripsi |
---|---|
task_handle | Membuat objek baru task_handle . Pekerjaan tugas dilakukan dengan memanggil fungsi yang ditentukan sebagai parameter untuk konstruktor. |
~task_handle Destructor | task_handle Menghancurkan objek. |
Operator Publik
Nama | Deskripsi |
---|---|
operator() | Operator panggilan fungsi yang dipanggil runtime untuk melakukan pekerjaan handel tugas. |
Keterangan
task_handle
objek dapat digunakan bersama dengan structured_task_group
objek atau lebih umum task_group
, untuk menguraikan pekerjaan menjadi tugas paralel. Untuk informasi selengkapnya, lihat Paralelisme Tugas.
Perhatikan bahwa pembuat task_handle
objek bertanggung jawab untuk mempertahankan masa pakai objek yang dibuat task_handle
sampai tidak lagi diperlukan oleh Concurrency Runtime. Biasanya, ini berarti bahwa task_handle
objek tidak boleh dihancurkan sampai wait
metode task_group
atau run_and_wait
dari atau structured_task_group
yang diantrekan telah dipanggil.
task_handle
objek biasanya digunakan bersama dengan C++ lambda. Karena Anda tidak tahu jenis lambda yang sebenarnya, fungsi make_task biasanya digunakan untuk membuat task_handle
objek.
Runtime membuat salinan fungsi kerja yang Anda teruskan ke task_handle
objek. Oleh karena itu, setiap perubahan status yang terjadi dalam objek fungsi yang Anda teruskan ke task_handle
objek tidak akan muncul di salinan objek fungsi tersebut.
Hierarki Warisan
task_handle
Persyaratan
Header: ppl.h
Namespace: konkurensi
operator()
Operator panggilan fungsi yang dipanggil runtime untuk melakukan pekerjaan handel tugas.
void operator()() const;
task_handle
Membuat objek baru task_handle
. Pekerjaan tugas dilakukan dengan memanggil fungsi yang ditentukan sebagai parameter untuk konstruktor.
task_handle(const _Function& _Func);
Parameter
_Func
Fungsi yang akan dipanggil untuk menjalankan pekerjaan yang diwakili oleh task_handle
objek. Ini mungkin funktor lambda, penunjuk ke fungsi, atau objek apa pun yang mendukung versi operator panggilan fungsi dengan tanda tangan void operator()()
.
Keterangan
Runtime membuat salinan fungsi kerja yang Anda teruskan ke konstruktor. Oleh karena itu, setiap perubahan status yang terjadi dalam objek fungsi yang Anda teruskan ke task_handle
objek tidak akan muncul di salinan objek fungsi tersebut.
~task_handle
task_handle
Menghancurkan objek.
~task_handle();
Baca juga
Namespace layanan konkurensi
Kelas task_group
Kelas structured_task_group
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