PageAsyncTask Конструкторы

Определение

Инициализирует новый экземпляр класса PageAsyncTask.

Перегрузки

PageAsyncTask(Func<CancellationToken,Task>)

Инициализирует новый экземпляр класса PageAsyncTask, используя обработчик событий, позволяющий отменить задачу.

PageAsyncTask(Func<Task>)

Инициализирует новый экземпляр класса PageAsyncTask, используя обработчик событий, позволяющий обработать задачу.

PageAsyncTask(BeginEventHandler, EndEventHandler, EndEventHandler, Object)

Инициализирует новый экземпляр класса PageAsyncTask с использованием заданного по умолчанию значения для параллельного выполнения.

PageAsyncTask(BeginEventHandler, EndEventHandler, EndEventHandler, Object, Boolean)

Инициализирует новый экземпляр класса PageAsyncTask с использованием указанного значения для параллельного выполнения.

PageAsyncTask(Func<CancellationToken,Task>)

Инициализирует новый экземпляр класса PageAsyncTask, используя обработчик событий, позволяющий отменить задачу.

public:
 PageAsyncTask(Func<System::Threading::CancellationToken, System::Threading::Tasks::Task ^> ^ handler);
public PageAsyncTask (Func<System.Threading.CancellationToken,System.Threading.Tasks.Task> handler);
new System.Web.UI.PageAsyncTask : Func<System.Threading.CancellationToken, System.Threading.Tasks.Task> -> System.Web.UI.PageAsyncTask
Public Sub New (handler As Func(Of CancellationToken, Task))

Параметры

handler
Func<CancellationToken,Task>

Обработчик событий.

Комментарии

Этот конструктор создает оболочку делегатаTaskEventHandler, PageAsyncTask чтобы объект смог интегрировать асинхронный код (на Task основе объектов) с существующей функцией ASP.NET Web Forms асинхронных страниц. ASP.NET сигнализирует объектуCancellationToken, который передается делегату TaskEventHandler для отмены на основе атрибутаAsyncTimeout, заданного в директиве @ Page веб-страницы. AsyncTimeout После достижения CancellationToken значения объект будет сигнализироваться. Параметр CancellationToken должен передаваться в любые асинхронные API, вызываемые реализацией TaskEventHandler класса.

Применяется к

PageAsyncTask(Func<Task>)

Инициализирует новый экземпляр класса PageAsyncTask, используя обработчик событий, позволяющий обработать задачу.

public:
 PageAsyncTask(Func<System::Threading::Tasks::Task ^> ^ handler);
public PageAsyncTask (Func<System.Threading.Tasks.Task> handler);
new System.Web.UI.PageAsyncTask : Func<System.Threading.Tasks.Task> -> System.Web.UI.PageAsyncTask
Public Sub New (handler As Func(Of Task))

Параметры

handler
Func<Task>

Обработчик событий.

Применяется к

PageAsyncTask(BeginEventHandler, EndEventHandler, EndEventHandler, Object)

Инициализирует новый экземпляр класса PageAsyncTask с использованием заданного по умолчанию значения для параллельного выполнения.

public:
 PageAsyncTask(System::Web::BeginEventHandler ^ beginHandler, System::Web::EndEventHandler ^ endHandler, System::Web::EndEventHandler ^ timeoutHandler, System::Object ^ state);
public PageAsyncTask (System.Web.BeginEventHandler beginHandler, System.Web.EndEventHandler endHandler, System.Web.EndEventHandler timeoutHandler, object state);
new System.Web.UI.PageAsyncTask : System.Web.BeginEventHandler * System.Web.EndEventHandler * System.Web.EndEventHandler * obj -> System.Web.UI.PageAsyncTask
Public Sub New (beginHandler As BeginEventHandler, endHandler As EndEventHandler, timeoutHandler As EndEventHandler, state As Object)

Параметры

beginHandler
BeginEventHandler

Обработчик для вызова при запуске асинхронной задачи.

endHandler
EndEventHandler

Обработчик для вызова при успешном завершении задачи до истечения времени ожидания.

timeoutHandler
EndEventHandler

Обработчик для вызова в случае, если задача не завершилась успешно до истечения времени ожидания.

state
Object

Объект, который представляет состояние задачи.

Исключения

Не указан параметр beginHandler или параметр endHandler.

Комментарии

Эта реализация конструктора задает ExecuteInParallel свойство таким образом, чтобы false асинхронная задача не обрабатывалась параллельно с другими задачами на странице.

Применяется к

PageAsyncTask(BeginEventHandler, EndEventHandler, EndEventHandler, Object, Boolean)

Инициализирует новый экземпляр класса PageAsyncTask с использованием указанного значения для параллельного выполнения.

public:
 PageAsyncTask(System::Web::BeginEventHandler ^ beginHandler, System::Web::EndEventHandler ^ endHandler, System::Web::EndEventHandler ^ timeoutHandler, System::Object ^ state, bool executeInParallel);
public PageAsyncTask (System.Web.BeginEventHandler beginHandler, System.Web.EndEventHandler endHandler, System.Web.EndEventHandler timeoutHandler, object state, bool executeInParallel);
new System.Web.UI.PageAsyncTask : System.Web.BeginEventHandler * System.Web.EndEventHandler * System.Web.EndEventHandler * obj * bool -> System.Web.UI.PageAsyncTask
Public Sub New (beginHandler As BeginEventHandler, endHandler As EndEventHandler, timeoutHandler As EndEventHandler, state As Object, executeInParallel As Boolean)

Параметры

beginHandler
BeginEventHandler

Обработчик для вызова при запуске асинхронной задачи.

endHandler
EndEventHandler

Обработчик для вызова при успешном завершении задачи до истечения времени ожидания.

timeoutHandler
EndEventHandler

Обработчик для вызова в случае, если задача не завершилась успешно до истечения времени ожидания.

state
Object

Объект, который представляет состояние задачи.

executeInParallel
Boolean

Значение, показывающее, может ли данная задача обрабатываться параллельно с другими задачами.

Исключения

Не указан параметр beginHandler или параметр endHandler.

Примеры

В следующем примере кода создаются три асинхронные задачи, которые обрабатываются параллельно друг с другом. Этот пример является частью более крупного примера, найденного в обзоре PageAsyncTask класса.

PageAsyncTask asyncTask1 = new PageAsyncTask(slowTask1.OnBegin, slowTask1.OnEnd, slowTask1.OnTimeout, "Async1", true);
PageAsyncTask asyncTask2 = new PageAsyncTask(slowTask2.OnBegin, slowTask2.OnEnd, slowTask2.OnTimeout, "Async2", true);
PageAsyncTask asyncTask3 = new PageAsyncTask(slowTask3.OnBegin, slowTask3.OnEnd, slowTask3.OnTimeout, "Async3", true);

// Register the asynchronous task.
Page.RegisterAsyncTask(asyncTask1);
Page.RegisterAsyncTask(asyncTask2);
Page.RegisterAsyncTask(asyncTask3);
Dim asyncTask1 As New PageAsyncTask(AddressOf slowTask1.OnBegin, AddressOf slowTask1.OnEnd, AddressOf slowTask1.OnTimeout, "Async1", True)
Dim asyncTask2 As New PageAsyncTask(AddressOf slowTask2.OnBegin, AddressOf slowTask2.OnEnd, AddressOf slowTask2.OnTimeout, "Async2", True)
Dim asyncTask3 As New PageAsyncTask(AddressOf slowTask3.OnBegin, AddressOf slowTask3.OnEnd, AddressOf slowTask3.OnTimeout, "Async3", True)

' Register the asynchronous task.
Page.RegisterAsyncTask(asyncTask1)
Page.RegisterAsyncTask(asyncTask2)
Page.RegisterAsyncTask(asyncTask3)

Комментарии

Эта реализация конструктора позволяет задать, будет ли асинхронная задача обрабатываться параллельно с другими задачами на странице.

Применяется к