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