PageAsyncTask 构造函数
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
初始化 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 将根据网页指令中的@ Page
属性集向委托传递TaskEventHandler的对象发出信号CancellationToken,以便取消AsyncTimeout。 AsyncTimeout达到该值后,CancellationToken将发出对象信号。 CancellationToken
参数必须传递给类实现TaskEventHandler调用的任何异步 API。
适用于
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
参数未指定。
注解
构造函数的此实现将属性false
设置为ExecuteInParallel,因此异步任务不会与页面上的其他任务并行处理。
适用于
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)
注解
此构造函数的实现允许你设置异步任务是否与页面上的其他任务并行处理。