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))
Параметры
Применяется к
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)
Комментарии
Эта реализация конструктора позволяет задать, будет ли асинхронная задача обрабатываться параллельно с другими задачами на странице.