TaskContinuationOptions Enumeráció
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
Megadja a metódussal ContinueWith(Action<Task>, CancellationToken, TaskContinuationOptions, TaskScheduler) létrehozott feladat viselkedésétContinueWith(Action<Task<TResult>>, TaskContinuationOptions).
Ez a felsorolás támogatja a tagértékek bitenkénti kombinációját.
public enum class TaskContinuationOptions
[System.Flags]
public enum TaskContinuationOptions
[System.Flags]
[System.Serializable]
public enum TaskContinuationOptions
[<System.Flags>]
type TaskContinuationOptions =
[<System.Flags>]
[<System.Serializable>]
type TaskContinuationOptions =
Public Enum TaskContinuationOptions
- Öröklődés
- Attribútumok
Mezők
| Name | Érték | Description |
|---|---|---|
| None | 0 | Ha nincs megadva folytatási beállítás, meghatározza, hogy a folytatás végrehajtásakor az alapértelmezett viselkedést kell használni. A folytatás aszinkron módon fut, amikor az antecedent tevékenység befejeződik, függetlenül az előd végső Status tulajdonságértékétől. Ha a folytatás gyermekfeladat, akkor leválasztott beágyazott feladatként jön létre. |
| PreferFairness | 1 | Egy tipp a TaskScheduler tevékenységek ütemezéséhez az ütemezett sorrendben, így a korábban ütemezett tevékenységek nagyobb valószínűséggel futnak hamarabb, és a később ütemezett tevékenységek nagyobb valószínűséggel futnak később. |
| LongRunning | 2 | Azt adja meg, hogy a folytatás hosszú ideig futó, természetesen részletes művelet lesz. Utal arra, hogy a TaskScheduler túljelentkezés indokolt lehet. |
| AttachedToParent | 4 | Megadja, hogy a folytatás , ha gyermekfeladat, a tevékenységhierarchiában lévő szülőhöz legyen csatolva. A folytatás csak akkor lehet gyermekfeladat, ha előzménye szintén gyermekfeladat. Alapértelmezés szerint a gyermekfeladat (azaz egy külső tevékenység által létrehozott belső tevékenység) a szülőtől függetlenül hajtja végre. A beállítással AttachedToParent szinkronizálhatja a szülő- és gyermekfeladatokat. Vegye figyelembe, hogy ha egy szülőfeladat ezzel a DenyChildAttach beállítással van konfigurálva, a AttachedToParent gyermekfeladatban lévő beállításnak nincs hatása, és a gyermekfeladat leválasztott gyermekfeladatként lesz végrehajtva. További információ: Csatolt és leválasztott gyermekfeladatok. |
| DenyChildAttach | 8 | Megadja, hogy a lehetőséggel AttachedToParent létrehozott és csatolt gyermekfeladatként végrehajtandó gyermekfeladatok (vagyis a folytatás által létrehozott beágyazott belső tevékenységek) nem lesznek csatolhatók a szülőfeladathoz, és nem lesznek külön gyermekfeladatok. További információ: Csatolt és leválasztott gyermekfeladatok. |
| HideScheduler | 16 | Megadja, hogy a folytatás által létrehozott tevékenységek olyan metódusok meghívásával jönnek létre, mint például Run(Action)ContinueWith(Action<Task>) az alapértelmezett ütemező (Default) és nem az a ütemező, amelyen ez a folytatás fut aktuális ütemezőként. |
| LazyCancellation | 32 | A folytatás lemondása esetén megakadályozza a folytatás befejezését, amíg az előzmény be nem fejeződik. |
| RunContinuationsAsynchronously | 64 | Megadja, hogy a folytatási feladatot aszinkron módon kell futtatni. Ez a beállítás elsőbbséget élvez a beállítással szemben ExecuteSynchronously. |
| NotOnRanToCompletion | 65536 | Azt határozza meg, hogy a folytatási tevékenység ne legyen ütemezve, ha az előzménye befejeződött. Az előzmény akkor fut a befejezésig, ha a tulajdonsága Status a befejezéskor .RanToCompletion Ez a beállítás nem érvényes többfeladatos folytatásokra. |
| NotOnFaulted | 131072 | Azt határozza meg, hogy a folytatási tevékenység ne legyen ütemezve, ha az előzménye nem kezelt kivételt eredményezett. Az előzmény kezeletlen kivételt eredményez, ha a tulajdonsága Status a befejezés után a Faultedkövetkező lesz: . Ez a beállítás nem érvényes többfeladatos folytatásokra. |
| OnlyOnCanceled | 196608 | Azt határozza meg, hogy a folytatás csak akkor legyen ütemezve, ha az előzménye megszakadt. Az előzmény akkor lesz megszakítva, ha a tulajdonsága Status a befejezéskor meg van Canceledszakítva. Ez a beállítás nem érvényes többfeladatos folytatásokra. |
| NotOnCanceled | 262144 | Azt határozza meg, hogy a folytatási tevékenység ne legyen ütemezve, ha az előzményét megszakították. Az előzmény akkor lesz megszakítva, ha a tulajdonsága Status a befejezéskor meg van Canceledszakítva. Ez a beállítás nem érvényes többfeladatos folytatásokra. |
| OnlyOnFaulted | 327680 | Megadja, hogy a folytatási tevékenység csak akkor legyen ütemezve, ha az előzménye nem kezelt kivételt jelzett. Az előzmény kezeletlen kivételt eredményez, ha a tulajdonsága Status a befejezés után a Faultedkövetkező lesz: . A OnlyOnFaulted beállítás garantálja, hogy az Exception előzmény tulajdonsága nem Ez a beállítás nem érvényes többfeladatos folytatásokra. |
| OnlyOnRanToCompletion | 393216 | Azt határozza meg, hogy a folytatás csak akkor legyen ütemezve, ha az előzménye befejeződött. Az előzmény akkor fut a befejezésig, ha a tulajdonsága Status a befejezéskor .RanToCompletion Ez a beállítás nem érvényes többfeladatos folytatásokra. |
| ExecuteSynchronously | 524288 | Megadja, hogy a folytatási feladatot szinkron módon kell végrehajtani. Ha ez a beállítás meg van adva, a folytatás ugyanazon a szálon fut, amely miatt az előzményfeladat áttér a végleges állapotára. Ha az előzmény már befejeződött a folytatás létrehozásakor, a folytatás a folytatást létrehozó szálon fog futni. Ha az előzmény CancellationTokenSource egy Mivel a feladat szinkron módon fut, nincs szükség olyan metódus meghívására, amely Wait() biztosítja, hogy a hívószál megvárja a feladat befejezését. |