PageAsyncTask Konstruktory
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Inicializuje novou instanci PageAsyncTask třídy.
Přetížení
PageAsyncTask(Func<CancellationToken,Task>) |
Inicializuje novou instanci PageAsyncTask třídy pomocí obslužné rutiny události, která umožňuje zrušit úlohu. |
PageAsyncTask(Func<Task>) |
Inicializuje novou instanci PageAsyncTask třídy pomocí obslužné rutiny události, která umožňuje zpracování úlohy. |
PageAsyncTask(BeginEventHandler, EndEventHandler, EndEventHandler, Object) |
Inicializuje novou instanci PageAsyncTask třídy pomocí výchozí hodnoty pro paralelní provádění. |
PageAsyncTask(BeginEventHandler, EndEventHandler, EndEventHandler, Object, Boolean) |
Inicializuje novou instanci PageAsyncTask třídy pomocí zadané hodnoty pro paralelní provádění. |
PageAsyncTask(Func<CancellationToken,Task>)
Inicializuje novou instanci PageAsyncTask třídy pomocí obslužné rutiny události, která umožňuje zrušit úlohu.
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))
Parametry
- handler
- Func<CancellationToken,Task>
Obslužná rutina události.
Poznámky
Tento konstruktor zabalí delegátaTaskEventHandler, aby PageAsyncTask objekt mohl integrovat asynchronní kód (na Task základě objektů) s existující funkcí ASP.NET Web Forms asynchronní stránky. ASP.NET signalizují CancellationToken objekt, který je předán delegátu TaskEventHandler pro zrušení na základě atributu AsyncTimeout nastaveného @ Page
v direktivě webové stránky. AsyncTimeout Po dosažení CancellationToken hodnoty bude objekt signalizován. Parametr CancellationToken
musí být předán všem asynchronním rozhraním API, která jsou volána vaší implementací TaskEventHandler třídy.
Platí pro
PageAsyncTask(Func<Task>)
Inicializuje novou instanci PageAsyncTask třídy pomocí obslužné rutiny události, která umožňuje zpracování úlohy.
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))
Parametry
Platí pro
PageAsyncTask(BeginEventHandler, EndEventHandler, EndEventHandler, Object)
Inicializuje novou instanci PageAsyncTask třídy pomocí výchozí hodnoty pro paralelní provádění.
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)
Parametry
- beginHandler
- BeginEventHandler
Obslužná rutina, která se má volat při zahájení asynchronní úlohy.
- endHandler
- EndEventHandler
Obslužná rutina, která se má volat při úspěšném dokončení úkolu během časového limitu.
- timeoutHandler
- EndEventHandler
Obslužná rutina, která se má volat, když se úkol úspěšně nedokončil během časového limitu.
- state
- Object
Objekt, který představuje stav úkolu.
Výjimky
Parametr beginHandler
nebo endHandler
parametr není zadán.
Poznámky
Tato implementace konstruktoru ExecuteInParallel nastaví vlastnost tak, aby false
asynchronní úloha nebyla zpracována paralelně s jinými úkoly na stránce.
Platí pro
PageAsyncTask(BeginEventHandler, EndEventHandler, EndEventHandler, Object, Boolean)
Inicializuje novou instanci PageAsyncTask třídy pomocí zadané hodnoty pro paralelní provádění.
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)
Parametry
- beginHandler
- BeginEventHandler
Obslužná rutina, která se má volat při zahájení asynchronní úlohy.
- endHandler
- EndEventHandler
Obslužná rutina, která se má volat při úspěšném dokončení úkolu během časového limitu.
- timeoutHandler
- EndEventHandler
Obslužná rutina, která se má volat, když se úkol úspěšně nedokončil během časového limitu.
- state
- Object
Objekt, který představuje stav úkolu.
- executeInParallel
- Boolean
Hodnota, která označuje, zda lze úkol zpracovat paralelně s jinými úkoly.
Výjimky
Parametr beginHandler
nebo endHandler
parametr není zadán.
Příklady
Následující příklad kódu vytvoří tři asynchronní úlohy, které se zpracovávají paralelně mezi sebou. Tento příklad je součástí většího příkladu, který najdete v přehledu PageAsyncTask třídy.
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)
Poznámky
Tato implementace konstruktoru umožňuje nastavit, zda bude asynchronní úloha zpracována paralelně s ostatními úkoly na stránce.