completion_future — Klasa
Reprezentuje przyszłość odpowiadającą operacji asynchronicznej C++ AMP.
Składnia
class completion_future;
Członkowie
Konstruktory publiczne
Nazwa/nazwisko | opis |
---|---|
konstruktor completion_future | Inicjuje nowe wystąpienie klasy completion_future . |
~completion_future Destruktor | completion_future Niszczy obiekt. |
Metody publiczne
Nazwa/nazwisko | opis |
---|---|
get | Czeka na zakończenie skojarzonej operacji asynchronicznej. |
Następnie | Powoduje utworzenie łańcucha obiektu funkcji wywołania zwrotnego do completion_future obiektu, który ma zostać wykonany, gdy skojarzona operacja asynchroniczna zakończy wykonywanie. |
to_task | task Zwraca obiekt odpowiadający skojarzonej operacji asynchronicznej. |
Prawidłowe | Pobiera wartość logiczną wskazującą, czy obiekt jest skojarzony z operacją asynchroniczną. |
Czekać | Blokuje działanie do momentu zakończenia skojarzonej operacji asynchronicznej. |
wait_for | Blokuje, dopóki skojarzona operacja asynchroniczna nie zostanie ukończona lub czas określony przez _Rel_time upłynął. |
wait_until | Blokuje, dopóki skojarzona operacja asynchroniczna nie zostanie ukończona lub dopóki bieżący czas nie przekroczy wartości określonej przez _Abs_time . |
Operatory publiczne
Nazwa/nazwisko | opis |
---|---|
operator std::shared_future<void> | Niejawnie konwertuje completion_future obiekt na std::shared_future obiekt. |
operator = | Kopiuje zawartość określonego completion_future obiektu do tego. |
Hierarchia dziedziczenia
completion_future
Wymagania
Nagłówek: amprt.h
Przestrzeń nazw: współbieżność
completion_future
Inicjuje nowe wystąpienie klasy completion_future
.
Składnia
completion_future();
completion_future(
const completion_future& _Other );
completion_future(
completion_future&& _Other );
Parametry
_Innych
completion_future
Obiekt do skopiowania lub przeniesienia.
Lista przeciążeń
Nazwa/nazwisko | opis |
---|---|
completion_future(); |
Inicjuje completion_future nowe wystąpienie klasy |
completion_future(const completion_future& _Other); |
Inicjuje nowe wystąpienie completion_future klasy, kopiując konstruktor. |
completion_future(completion_future&& _Other); |
Inicjuje nowe wystąpienie completion_future klasy przez przeniesienie konstruktora. |
get
Czeka na zakończenie skojarzonej operacji asynchronicznej. Zgłasza przechowywany wyjątek, jeśli wystąpił podczas operacji asynchronicznej.
Składnia
void get() const;
operator std::shared_future<void>
Niejawnie konwertuje completion_future
obiekt na std::shared_future
obiekt.
Składnia
operator std::shared_future<void>() const;
Wartość zwracana
Obiekt std::shared_future
.
operator =
Kopiuje zawartość określonego completion_future
obiektu do tego.
Składnia
completion_future& operator= (const completion_future& _Other );
completion_future& operator= (completion_future&& _Other );
Parametry
_Innych
Obiekt do skopiowania.
Wartość zwracana
Odwołanie do tego completion_future
obiektu.
Lista przeciążeń
Nazwa/nazwisko | opis |
---|---|
completion_future& operator=(const completion_future& _Other); |
Kopiuje zawartość określonego completion_future obiektu do tego obiektu przy użyciu kopii głębokiej. |
completion_future& operator=(completion_future&& _Other); |
Kopiuje zawartość określonego completion_future obiektu do tego obiektu przy użyciu przypisania przenoszenia. |
to
Powoduje utworzenie łańcucha obiektu funkcji wywołania zwrotnego do completion_future
obiektu, który ma zostać wykonany, gdy skojarzona operacja asynchroniczna zakończy wykonywanie.
Składnia
template <typename _Functor>
void then(const _Functor & _Func ) const;
Parametry
_Teoria
Functor wywołania zwrotnego.
_Func
Obiekt funkcji wywołania zwrotnego.
to_task
task
Zwraca obiekt odpowiadający skojarzonej operacji asynchronicznej.
Składnia
concurrency::task<void> to_task() const;
Wartość zwracana
task
Obiekt odpowiadający skojarzonej operacji asynchronicznej.
Prawidłowe
Pobiera wartość logiczną wskazującą, czy obiekt jest skojarzony z operacją asynchroniczną.
Składnia
bool valid() const;
Wartość zwracana
true
jeśli obiekt jest skojarzony z operacją asynchroniczną; w przeciwnym razie, false
.
wait
Blokuje działanie do momentu zakończenia skojarzonej operacji asynchronicznej.
Składnia
void wait() const;
wait_for
Blokuje, dopóki skojarzona operacja asynchroniczna nie zostanie ukończona lub czas określony przez _Rel_time
upłynął.
Składnia
template <
class _Rep,
class _Period
>
std::future_status::future_status wait_for(
const std::chrono::duration< _Rep, _Period>& _Rel_time ) const;
Parametry
_Rep
Typ arytmetyczny reprezentujący liczbę kleszczy.
_Okres
Std::ratio, który reprezentuje liczbę sekund, które upłynęły na kleszcze.
_Rel_time
Maksymalny czas oczekiwania na ukończenie operacji.
Wartość zwracana
Zwraca:
std::future_status::deferred
jeśli skojarzona operacja asynchroniczna nie jest uruchomiona.std::future_status::ready
jeśli skojarzona operacja asynchroniczna jest zakończona.std::future_status::timeout
jeśli określony okres upłynie.
wait_until
Blokuje, dopóki skojarzona operacja asynchroniczna nie zostanie ukończona lub dopóki bieżący czas nie przekroczy wartości określonej przez _Abs_time
.
Składnia
template <
class _Clock,
class _Duration
>
std::future_status::future_status wait_until(
const std::chrono::time_point< _Clock, _Duration>& _Abs_time ) const;
Parametry
_Zegar
Zegar, na którym jest mierzony ten punkt czasu.
_Długość
Przedział czasu od początku _Clock
epoki, po którym funkcja upłynął limit czasu.
_Abs_time
Punkt w czasie, po którym funkcja upłynął limit czasu.
Wartość zwracana
Zwraca:
std::future_status::deferred
jeśli skojarzona operacja asynchroniczna nie jest uruchomiona.std::future_status::ready
jeśli skojarzona operacja asynchroniczna jest zakończona.std::future_status::timeout
jeśli określony okres upłynął.
~completion_future
completion_future
Niszczy obiekt.
Składnia
~completion_future();
Zobacz też
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla