sdk
latest
false
- Información general
- Actividades personalizadas
- Migrar actividades a .NET 6
- Notas relacionadas
- Construir reglas para el Analizador de flujo de trabajo
- Crear actividades de Configuración del proyecto
- Crear Asistentes personalizados
- Priorizar las actividades según su alcance
- UiPath.Activities.Api.Base
- UiPath.Studio.Activities.Api
- UiPath.Studio.Activities.Api.Activities
- UiPath.Studio.Activities.Api.BusyService
- UiPath.Studio.Activities.Api.ExpressionEditor
- UiPath.Studio.Activities.Api.Expressions
- UiPath.Studio.Activities.Api.Licensing
- UiPath.Studio.Activities.Api.Mocking
- UiPath.Studio.Activities.Api.ObjectLibrary
- UiPath.Studio.Activities.Api.PackageBindings
- UiPath.Studio.Activities.Api.ProjectProperties
- UiPath.Studio.Activities.Api.ScopedActivities
- UiPath.Studio.Activities.Api.Settings
- UiPath.Studio.Activities.Api.Wizards
- UiPath.Studio.Activities.Api.Workflow
- UiPath.Studio.Api.Controls
- UiPath.Studio.Api.Telemetry
- UiPath.Studio.Api.Theme
- Robot JavaScript SDK
- Desencadenadores SDK
Tiempo de espera
Importante :
Este contenido se ha localizado parcialmente a partir de un sistema de traducción automática.
Guía del desarrollador
Last updated 25 de oct. de 2024
Tiempo de espera
La alternancia Tiempo de espera agrega una propiedad de Tiempo de espera a la actividad. Si la actividad no termina de ejecutarse dentro del tiempo especificado en esta propiedad, se arrojará un error. El tiempo de espera predeterminado se establece automáticamente en 60 000 ms (1 minuto).
Creador de actividades
Código generado
Las actividades con tiempos de espera contienen un método
ExecuteWithTimeout
, que contiene la lógica de ejecución de esa actividad. Este método se llama dentro del método ExecuteAsync
principal y agota el tiempo de espera después de un período de tiempo establecido (60 segundos por defecto).
protected override async Task<Action<AsyncCodeActivityContext>> ExecuteAsync(AsyncCodeActivityContext context, CancellationToken cancellationToken)
{
// Inputs
var timeout = TimeoutMS.Get(context);
// Set a timeout on the execution
var task = ExecuteWithTimeout(context, cancellationToken);
if (await Task.WhenAny(task, Task.Delay(timeout, cancellationToken)) != task) throw new TimeoutException(Resources.Timeout_Error);
// Outputs
return (ctx) => { };
}
private async Task ExecuteWithTimeout(AsyncCodeActivityContext context, CancellationToken cancellationToken = default)
{
///////////////////////////
// Add execution logic HERE
///////////////////////////
}
protected override async Task<Action<AsyncCodeActivityContext>> ExecuteAsync(AsyncCodeActivityContext context, CancellationToken cancellationToken)
{
// Inputs
var timeout = TimeoutMS.Get(context);
// Set a timeout on the execution
var task = ExecuteWithTimeout(context, cancellationToken);
if (await Task.WhenAny(task, Task.Delay(timeout, cancellationToken)) != task) throw new TimeoutException(Resources.Timeout_Error);
// Outputs
return (ctx) => { };
}
private async Task ExecuteWithTimeout(AsyncCodeActivityContext context, CancellationToken cancellationToken = default)
{
///////////////////////////
// Add execution logic HERE
///////////////////////////
}
Efecto en UiPath Studio