Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Menjelaskan objek pengembalian asinkron.
Sintaks
template <class Ty>
class future;
Keterangan
Setiap penyedia asinkron standar mengembalikan objek yang jenisnya adalah instans templat ini. Objek future menyediakan satu-satunya akses ke penyedia asinkron yang terkait dengannya. Jika Anda memerlukan beberapa objek pengembalian asinkron yang terkait dengan penyedia asinkron yang sama, salin future objek ke shared_future objek.
Anggota
Konstruktor Publik
| Nama | Deskripsi |
|---|---|
future |
Membuat future objek. |
Metode Publik
| Nama | Deskripsi |
|---|---|
get |
Mengambil hasil yang disimpan dalam status asinkron terkait. |
share |
Mengonversi objek menjadi shared_future. |
valid |
Menentukan apakah objek tidak kosong. |
wait |
Memblokir utas saat ini hingga status asinkron terkait siap. |
wait_for |
Memblokir hingga status asinkron terkait siap atau sampai waktu yang ditentukan berlalu. |
wait_until |
Memblokir hingga status asinkron terkait siap atau sampai titik waktu yang ditentukan. |
Operator Publik
| Nama | Deskripsi |
|---|---|
future::operator= |
Mentransfer status asinkron terkait dari objek tertentu. |
Persyaratan
Header: <future>
kumpulan nama XML: std
Konstruktor
Membuat future objek.
future() noexcept;
future(future&& Other) noexcept;
Parameter
Other
Objek future.
Keterangan
Konstruktor pertama membangun future objek yang tidak memiliki status asinkron terkait.
Konstruktor kedua membangun future objek dan mentransfer status asinkron terkait dari Lainnya. Lainnya tidak lagi memiliki status asinkron terkait.
get
Mengambil hasil yang disimpan dalam status asinkron terkait.
Ty get();
Tampilkan Nilai
Jika hasilnya adalah pengecualian, metode akan menumbuhkannya kembali. Jika tidak, hasilnya dikembalikan.
Keterangan
Sebelum mengambil hasilnya, metode ini memblokir utas saat ini hingga status asinkron terkait siap.
Untuk spesialisasi future<Ty&>parsial , nilai yang disimpan secara efektif merupakan referensi ke objek yang diteruskan ke penyedia asinkron sebagai nilai pengembalian.
Karena tidak ada nilai tersimpan untuk spesialisasi future<void>, metode mengembalikan void.
Dalam spesialisasi lain, metode memindahkan nilai pengembaliannya dari nilai tersimpan. Oleh karena itu, panggil metode ini hanya sekali.
operator=
Mentransfer status asinkron terkait dari objek tertentu.
future& operator=(future&& Right) noexcept;
Parameter
Kanan
Objek future.
Tampilkan Nilai
*this
Keterangan
Setelah transfer, Hak tidak lagi memiliki status asinkron terkait.
share
Mengonversi objek menjadi shared_future objek.
shared_future<Ty> share();
Tampilkan Nilai
shared_future(move(*this))
valid
Menentukan apakah objek memiliki status asinkron terkait.
bool valid() noexcept;
Tampilkan Nilai
true jika objek memiliki status asinkron terkait; jika tidak, false.
wait
Memblokir utas saat ini hingga status asinkron terkait siap.
void wait() const;
Keterangan
Status asinkron terkait hanya siap jika penyedia asinkronnya telah menyimpan nilai pengembalian atau menyimpan pengecualian.
wait_for
Memblokir utas saat ini hingga status asinkron terkait siap atau sampai interval waktu yang ditentukan berlalu.
template <class Rep, class Period>
future_status wait_for(const chrono::duration<Rep, Period>& Rel_time) const;
Parameter
Rel_time
Objek chrono::duration yang menentukan interval waktu maksimum yang diblokir utas.
Tampilkan Nilai
Yang future_status menunjukkan alasan untuk kembali.
Keterangan
Status asinkron terkait hanya siap jika penyedia asinkronnya telah menyimpan nilai pengembalian atau menyimpan pengecualian.
wait_until
Memblokir utas saat ini hingga status asinkron terkait siap atau sampai setelah titik waktu yang ditentukan.
template <class Clock, class Duration>
future_status wait_until(const chrono::time_point<Clock, Duration>& Abs_time) const;
Parameter
Abs_time
Objek time_point yang menentukan waktu setelah itu utas dapat membuka blokir.
Tampilkan Nilai
Yang future_status menunjukkan alasan untuk kembali.
Keterangan
Status asinkron terkait hanya siap jika penyedia asinkronnya telah menyimpan nilai pengembalian atau menyimpan pengecualian.