Bagikan melalui


Kelas completion_future

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

Sintaks

class completion_future;

Anggota

Konstruktor Publik

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

Metode Publik

Nama Deskripsi
get Menunggu hingga operasi asinkron terkait selesai.
then Menautkan objek fungsi panggilan balik ke objek yang completion_future akan dijalankan ketika operasi asinkron terkait menyelesaikan eksekusi.
to_task Mengembalikan objek yang task sesuai dengan operasi asinkron terkait.
Berlaku Mendapatkan nilai Boolean yang menunjukkan apakah objek dikaitkan dengan operasi asinkron.
Tunggu Memblokir hingga operasi asinkron terkait selesai.
wait_for 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> Secara implisit completion_future mengonversi objek menjadi std::shared_future objek.
operator= Menyalin isi objek completion_future yang ditentukan ke dalam objek ini.

Hierarki Warisan

completion_future

Persyaratan

Header: amprt.h

Namespace: konkurensi

completion_future

Menginisialisasi instans baru kelas completion_future.

Sintaks

completion_future();

completion_future(
    const completion_future& _Other );

completion_future(
    completion_future&& _Other );

Parameter

_Other
Objek completion_future yang akan disalin atau dipindahkan.

Daftar Kelebihan Beban

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

get

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

Sintaks

void get() const;

operator std::shared_future<void>

Secara implisit completion_future mengonversi objek menjadi std::shared_future objek.

Sintaks

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

Tampilkan Nilai

Sebuah objekstd::shared_future.

operator=

Menyalin isi objek completion_future yang ditentukan ke dalam objek ini.

Sintaks

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

Parameter

_Other
Objek yang akan disalin.

Tampilkan Nilai

Referensi ke objek ini completion_future .

Daftar Kelebihan Beban

Nama Deskripsi
completion_future& operator=(const completion_future& _Other); Menyalin konten objek yang ditentukan completion_future ke dalam objek ini, menggunakan salinan mendalam.
completion_future& operator=(completion_future&& _Other); Menyalin isi objek yang ditentukan completion_future ke dalam objek ini, menggunakan penetapan pemindahan.

kemudian

Menautkan objek fungsi panggilan balik ke objek yang completion_future akan dijalankan ketika operasi asinkron terkait menyelesaikan eksekusi.

Sintaks

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

Parameter

_Functor
Funktor panggilan balik.

_Func
Objek fungsi panggilan balik.

to_task

Mengembalikan objek yang task sesuai dengan operasi asinkron terkait.

Sintaks

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

Tampilkan Nilai

Objek task yang sesuai dengan operasi asinkron terkait.

valid

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

Sintaks

bool valid() const;

Tampilkan Nilai

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

tunggu

Memblokir hingga operasi asinkron terkait selesai.

Sintaks

void wait() const;

wait_for

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

Sintaks

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

Parameter

_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.

Tampilkan Nilai

Menampilkan:

  • 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.

wait_until

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

Sintaks

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

Parameter

_Jam
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.

Tampilkan Nilai

Menampilkan:

  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.

Sintaks

~completion_future();

Baca juga

Namespace Konkurensi (C++ AMP)