次の方法で共有


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>

イベント ハンドラー。

注釈

このコンストラクターは、オブジェクトが (オブジェクトにTask基づく) 非同期コードと既存の PageAsyncTask ASP.NET Web Forms非同期ページ機能を統合できるように、デリゲートをラップTaskEventHandlerします。 ASP.NET は、Web ページのCancellationTokenディレクティブで設定された属性にTaskEventHandlerAsyncTimeout基づいて、取り消しのためにデリゲートに@ Page渡されるオブジェクトに通知します。 値に 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))

パラメーター

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 パラメーターが指定されていません。

注釈

このコンストラクターの実装は、非同期タスクがページ上の他のタスクと並行して処理されないように、プロパティ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 パラメーターが指定されていません。

次のコード例では、相互に並列に処理される 3 つの非同期タスクを作成します。 この例は、クラスの概要にあるより大きな例の 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)

注釈

このコンストラクターの実装により、非同期タスクをページ上の他のタスクと並行して処理するかどうかを設定できます。

適用対象