completion_future (Clase)
Representa un futuro que corresponde a la operación asincrónica de C++ AMP.
Sintaxis
class completion_future;
Miembros
Constructores públicos
Nombre | Descripción |
---|---|
Constructor completion_future | Inicializa una nueva instancia de la clase completion_future . |
Destructor ~completion_future | Destruye el objeto completion_future . |
Métodos públicos
Nombre | Descripción |
---|---|
get | Espera hasta que se completa la operación asincrónica asociada. |
then | Encadena un objeto de función de devolución de llamada al objeto completion_future que se va a ejecutar cuando la operación asincrónica asociada finalice la ejecución. |
to_task | Devuelve un objeto task correspondiente a la operación asincrónica asociada. |
valid | Obtiene un valor booleano que indica si el objeto está asociado a una operación asincrónica. |
wait | Se bloquea hasta que se complete la operación asincrónica asociada. |
wait_for | Se bloquea hasta que se complete la operación asincrónica asociada o hasta que haya transcurrido el tiempo que ha especificado _Rel_time . |
wait_until | Se bloquea hasta que se complete la operación asincrónica asociada o hasta que la hora actual supere el valor que ha especificado _Abs_time . |
Operadores públicos
Nombre | Descripción |
---|---|
operator std::shared_future<void> | Convierte implícitamente un objeto completion_future en uno std::shared_future . |
operator= | Copia el contenido del objeto completion_future especificado en este. |
Jerarquía de herencia
completion_future
Requisitos
Encabezado: amprt.h
Espacio de nombres: simultaneidad
completion_future
Inicializa una nueva instancia de la clase completion_future
.
Sintaxis
completion_future();
completion_future(
const completion_future& _Other );
completion_future(
completion_future&& _Other );
Parámetros
_Other
Objeto completion_future
que se va a copiar o mover.
Lista de sobrecargas
Nombre | Descripción |
---|---|
completion_future(); |
Inicializa una instancia nueva de la clase completion_future . |
completion_future(const completion_future& _Other); |
Inicializa una instancia nueva de la clase completion_future copiando un constructor. |
completion_future(completion_future&& _Other); |
Inicializa una instancia nueva de la clase completion_future moviendo un constructor. |
get
Espera hasta que se completa la operación asincrónica asociada. Genera la excepción almacenada si se encontró una durante la operación asincrónica.
Sintaxis
void get() const;
operator std::shared_future<void>
Convierte implícitamente un objeto completion_future
en uno std::shared_future
.
Sintaxis
operator std::shared_future<void>() const;
Valor devuelto
Objeto std::shared_future
.
operator=
Copia el contenido del objeto completion_future
especificado en este.
Sintaxis
completion_future& operator= (const completion_future& _Other );
completion_future& operator= (completion_future&& _Other );
Parámetros
_Other
El objeto desde el que se va a copiar.
Valor devuelto
La referencia a este objeto completion_future
.
Lista de sobrecargas
Nombre | Descripción |
---|---|
completion_future& operator=(const completion_future& _Other); |
Copia el contenido del objeto completion_future especificado en este mediante una copia en profundidad. |
completion_future& operator=(completion_future&& _Other); |
Copia el contenido del objeto completion_future especificado en este mediante una asignación de movimiento. |
y luego
Encadena un objeto de función de devolución de llamada al objeto completion_future
que se va a ejecutar cuando la operación asincrónica asociada finalice la ejecución.
Sintaxis
template <typename _Functor>
void then(const _Functor & _Func ) const;
Parámetros
_Functor
Functor de devolución de llamada.
_Func
Objeto de función de devolución de llamada.
to_task
Devuelve un objeto task
correspondiente a la operación asincrónica asociada.
Sintaxis
concurrency::task<void> to_task() const;
Valor devuelto
Objeto task
correspondiente a la operación asincrónica asociada.
válido
Obtiene un valor booleano que indica si el objeto está asociado a una operación asincrónica.
Sintaxis
bool valid() const;
Valor devuelto
Es true
si el objeto está asociado a una operación asincrónica; de lo contrario, es false
.
wait
Se bloquea hasta que se complete la operación asincrónica asociada.
Sintaxis
void wait() const;
wait_for
Se bloquea hasta que se complete la operación asincrónica asociada o hasta que haya transcurrido el tiempo que ha especificado _Rel_time
.
Sintaxis
template <
class _Rep,
class _Period
>
std::future_status::future_status wait_for(
const std::chrono::duration< _Rep, _Period>& _Rel_time ) const;
Parámetros
_Rep
Tipo aritmético que representa el número de tics.
_Period
Un elemento std::ratio que representa el número de segundos transcurridos por tic.
_Rel_time
Cantidad máxima de tiempo que se va a esperar a que se complete la operación.
Valor devuelto
Devuelve:
std::future_status::deferred
si la operación asincrónica asociada no se está ejecutando.std::future_status::ready
si la operación asincrónica asociada ha finalizado.std::future_status::timeout
si ha transcurrido el periodo de tiempo especificado.
wait_until
Se bloquea hasta que se complete la operación asincrónica asociada o hasta que la hora actual supere el valor que ha especificado _Abs_time
.
Sintaxis
template <
class _Clock,
class _Duration
>
std::future_status::future_status wait_until(
const std::chrono::time_point< _Clock, _Duration>& _Abs_time ) const;
Parámetros
_Clock
Reloj en el que se mide este punto en el tiempo.
_Duration
Intervalo de tiempo desde el inicio de la época, después del cual se agotará el tiempo de _Clock
espera de la función.
_Abs_time
Punto en el tiempo después del cual se agotará el tiempo de espera de la función.
Valor devuelto
Devuelve:
std::future_status::deferred
si la operación asincrónica asociada no se está ejecutando.std::future_status::ready
si la operación asincrónica asociada ha finalizado.std::future_status::timeout
si ha transcurrido el periodo de tiempo especificado.
~completion_future
Destruye el objeto completion_future
.
Sintaxis
~completion_future();