Bagikan melalui


Kelas completion_future

Mewakili masa depan yang sesuai dengan operasi asinkron C++ AMP.

Sintaksis

class completion_future;

Members

Konstruktor Publik

Nama Deskripsi
completion_future Konstruktor Menginisialisasi instans baru dari kelas completion_future.
~completion_future Destruktor completion_future Menghancurkan objek.

Metode Publik

Nama Deskripsi
get Menunggu hingga operasi asinkron terkait selesai.
then Menautkan fungsi callback ke objek completion_future, yang akan dijalankan ketika operasi asinkron terkait menyelesaikan proses eksekusi.
to_task Mengembalikan objek task yang sesuai dengan operasi asinkron terkait.
sah Mendapatkan nilai Boolean yang menunjukkan apakah objek dikaitkan dengan operasi asinkron.
Tunggu Memblokir hingga operasi asinkron terkait selesai.
tunggu_untuk Memblokir hingga operasi asinkron terkait selesai atau waktu yang ditentukan oleh _Rel_time telah berlalu.
wait_until Memblokir hingga operasi asinkron terkait selesai atau sampai waktu saat ini melebihi nilai yang ditentukan oleh _Abs_time.

Operator Publik

Nama Deskripsi
operator std::shared_future<void> Mengonversi objek completion_future menjadi objek std::shared_future secara implisit.
operator= Menyalin isi objek completion_future yang ditentukan ke dalam objek ini.

Hierarki Pewarisan

completion_future

Persyaratan

Header: amprt.h

Namespace: konkurensi

penyelesaian_masa_depan

Menginisialisasi instans baru dari kelas completion_future.

Sintaksis

completion_future();

completion_future(
    const completion_future& _Other );

completion_future(
    completion_future&& _Other );

Parameter-parameternya

_Other
Objek completion_future yang akan disalin atau dipindahkan.

Daftar Kelebihan Beban

Nama Deskripsi
completion_future(); Menginisialisasi instans baru dari Kelas completion_future
completion_future(const completion_future& _Other); Menginisialisasi instans completion_future baru kelas dengan menyalin konstruktor.
completion_future(completion_future&& _Other); Menginisialisasi instance baru dari kelas completion_future dengan menggerakkan konstruktor.

get

Menunggu hingga operasi asinkron terkait selesai. Melempar pengecualian tersimpan jika ditemui selama operasi asinkron.

Sintaksis

void get() const;

operator std::shared_future<void>

Mengonversi objek completion_future menjadi objek std::shared_future secara implisit.

Sintaksis

operator std::shared_future<void>() const;

Mengembalikan Nilai

Sebuah objekstd::shared_future.

operator=

Menyalin isi objek completion_future yang ditentukan ke dalam objek ini.

Sintaksis

completion_future&  operator= (const completion_future& _Other );
completion_future&  operator= (completion_future&& _Other );

Parameter-parameternya

_Other
Objek yang akan disalin.

Mengembalikan Nilai

Referensi ke objek ini completion_future .

Daftar Kelebihan Beban

Nama Deskripsi
completion_future& operator=(const completion_future& _Other); Menyalin isi dari objek yang ditentukan completion_future ke dalam objek ini, dengan menggunakan salinan lengkap.
completion_future& operator=(completion_future&& _Other); Menyalin isi objek yang ditentukan completion_future ke dalam objek ini, menggunakan penugasan pindah.

kemudian

Menautkan fungsi callback ke objek completion_future, yang akan dijalankan ketika operasi asinkron terkait menyelesaikan proses eksekusi.

Sintaksis

template <typename _Functor>
void then(const _Functor & _Func ) const;

Parameter-parameternya

_Functor
Funktor panggilan balik.

_Func
Objek fungsi panggilan balik.

menuju_tugas

Mengembalikan objek task yang sesuai dengan operasi asinkron terkait.

Sintaksis

concurrency::task<void> to_task() const;

Mengembalikan Nilai

Objek task yang sesuai dengan operasi asinkron terkait.

sah

Mendapatkan nilai Boolean yang menunjukkan apakah objek dikaitkan dengan operasi asinkron.

Sintaksis

bool valid() const;

Mengembalikan Nilai

true jika objek dikaitkan dengan operasi asinkron; jika tidak, false.

wait

Memblokir hingga operasi asinkron terkait selesai.

Sintaksis

void wait() const;

tunggu_untuk

Memblokir hingga operasi asinkron terkait selesai atau waktu yang ditentukan oleh _Rel_time telah berlalu.

Sintaksis

template <
    class _Rep,
    class _Period
>
std::future_status::future_status wait_for(
    const std::chrono::duration< _Rep, _Period>& _Rel_time ) const;

Parameter-parameternya

_Rep
Jenis aritmatika yang mewakili jumlah tanda centang.

_Periode
Std::ratio yang menunjukkan jumlah detik yang berlalu per tanda centang.

_Rel_time
Jumlah waktu maksimum untuk menunggu operasi selesai.

Mengembalikan Nilai

Pengembalian:

  • std::future_status::deferred jika operasi asinkron terkait tidak berjalan.

  • std::future_status::ready jika operasi asinkron terkait selesai.

  • std::future_status::timeout jika periode waktu yang ditentukan telah berlalu.

tunggu_sampai

Memblokir hingga operasi asinkron terkait selesai atau sampai waktu saat ini melebihi nilai yang ditentukan oleh _Abs_time.

Sintaksis

template <
    class _Clock,
    class _Duration
>
std::future_status::future_status wait_until(
    const std::chrono::time_point< _Clock, _Duration>& _Abs_time ) const;

Parameter-parameternya

_Penghitung Waktu
Jam di mana titik waktu ini diukur.

_Durasi
Interval waktu sejak awal _Clockepoch, setelah itu fungsi akan kehabisan waktu.

_Abs_time
Titik waktu setelah fungsi akan kehabisan waktu.

Mengembalikan Nilai

Pengembalian:

  1. std::future_status::deferred jika operasi asinkron terkait tidak berjalan.

  2. std::future_status::ready jika operasi asinkron terkait selesai.

  3. std::future_status::timeout jika periode waktu yang ditentukan telah berlalu.

~completion_future

completion_future Menghancurkan objek.

Sintaksis

~completion_future();

Baca juga

Namespace Konkurensi (C++ AMP)