TaskContinuationOptions Enum
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Anger beteendet för en uppgift som skapas med hjälp ContinueWith(Action<Task>, CancellationToken, TaskContinuationOptions, TaskScheduler) av metoden eller ContinueWith(Action<Task<TResult>>, TaskContinuationOptions) .
Den här uppräkningen stöder en bitvis kombination av dess medlemsvärden.
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
- Arv
- Attribut
Fält
| Name | Värde | Description |
|---|---|---|
| None | 0 | När inga fortsättningsalternativ har angetts anger att standardbeteendet ska användas vid körning av en fortsättning. Fortsättningen körs asynkront när den antecedent uppgiften slutförs, oavsett den föregående egenskapens slutliga Status egenskapsvärde. Om fortsättningen är en underordnad uppgift skapas den som en frånkopplad kapslad uppgift. |
| PreferFairness | 1 | Ett tips till en TaskScheduler för att schemalägga aktiviteten i den ordning de schemalagts, så att aktiviteter som schemalagts tidigare är mer benägna att köras tidigare, och aktiviteter som schemaläggs senare är mer benägna att köras senare. |
| LongRunning | 2 | Anger att en fortsättning ska vara en tidskrävande, kursspecifik åtgärd. Det ger en ledtråd till TaskScheduler att överprenumerering kan vara berättigad. |
| AttachedToParent | 4 | Anger att fortsättningen, om det är en underordnad uppgift, är kopplad till en överordnad i aktivitetshierarkin. Fortsättningen kan endast vara en underordnad uppgift om dess föregångare också är en underordnad uppgift. Som standard körs en underordnad aktivitet (dvs. en inre uppgift som skapats av en yttre uppgift) oberoende av dess överordnade uppgift. Du kan använda alternativet AttachedToParent så att de överordnade och underordnade uppgifterna synkroniseras. Observera att om en överordnad aktivitet har konfigurerats med alternativet har DenyChildAttach alternativet i den underordnade aktiviteten ingen effekt och den underordnade aktiviteten körs som en frånkopplad underordnad AttachedToParent aktivitet. För mer information, se Anslutna och separerade barnuppgifter. |
| DenyChildAttach | 8 | Anger att alla underordnade aktiviteter (d.v.s. alla kapslade inre aktiviteter som skapas av den här fortsättningen AttachedToParent ) som skapas med alternativet och som försöker köras som en bifogad underordnad uppgift inte kommer att kunna kopplas till den överordnade aktiviteten och i stället köras som en frånkopplad underordnad aktivitet. För mer information, se Anslutna och separerade barnuppgifter. |
| HideScheduler | 16 | Anger att uppgifter som skapats av fortsättningen genom att anropa metoder som Run(Action) eller ContinueWith(Action<Task>) se standardschemaläggaren (Default) i stället för den schemaläggare där fortsättningen körs som aktuell schemaläggare. |
| LazyCancellation | 32 | Om fortsättningen avbryts förhindrar det att fortsättningen slutförs förrän den föregående har slutförts. |
| RunContinuationsAsynchronously | 64 | Anger att fortsättningsaktiviteten ska köras asynkront. Det här alternativet har företräde framför ExecuteSynchronously. |
| NotOnRanToCompletion | 65536 | Anger att fortsättningsaktiviteten inte ska schemaläggas om dess tidigare kördes till slutförande. En antecedent körs till slutförande om dess Status egenskap när den är klar är RanToCompletion. Det här alternativet är inte giltigt för fortsättningar med flera aktiviteter. |
| NotOnFaulted | 131072 | Anger att fortsättningsaktiviteten inte ska schemaläggas om dess föregående undantag utlöste ett ohanterat undantag. En tidigare instans utlöser ett ohanterat undantag om dess Status egenskap när den är klar är Faulted. Det här alternativet är inte giltigt för fortsättningar med flera aktiviteter. |
| OnlyOnCanceled | 196608 | Anger att fortsättningen endast ska schemaläggas om dess antecedent avbröts. En tidigare instans avbryts om dess Status egenskap när den är klar är Canceled. Det här alternativet är inte giltigt för fortsättningar med flera aktiviteter. |
| NotOnCanceled | 262144 | Anger att fortsättningsaktiviteten inte ska schemaläggas om den tidigare avbröts. En tidigare instans avbryts om dess Status egenskap när den är klar är Canceled. Det här alternativet är inte giltigt för fortsättningar med flera aktiviteter. |
| OnlyOnFaulted | 327680 | Anger att fortsättningsaktiviteten endast ska schemaläggas om dess föregående undantag utlöste ett ohanterat undantag. En tidigare instans utlöser ett ohanterat undantag om dess Status egenskap när den är klar är Faulted. Alternativet OnlyOnFaulted garanterar att Exception egenskapen i antecedent inte Det här alternativet är inte giltigt för fortsättningar med flera aktiviteter. |
| OnlyOnRanToCompletion | 393216 | Anger att fortsättningen endast ska schemaläggas om dess tidigare kördes till slutförande. En antecedent körs till slutförande om dess Status egenskap när den är klar är RanToCompletion. Det här alternativet är inte giltigt för fortsättningar med flera aktiviteter. |
| ExecuteSynchronously | 524288 | Anger att fortsättningsaktiviteten ska köras synkront. Med det här alternativet angivet körs fortsättningen på samma tråd som gör att den tidigare uppgiften övergår till sitt slutliga tillstånd. Om antecedent redan är klar när fortsättningen skapas körs fortsättningen på den tråd som skapar fortsättningen. Om antecedents CancellationTokenSource tas bort i ett Eftersom aktiviteten körs synkront behöver du inte anropa en metod, till exempel Wait() för att säkerställa att den anropande tråden väntar på att aktiviteten ska slutföras. |