, waardoor de taak van de afschaffing van een aantal eisen.Ten eerste, je moet de vorming van een teken, zal bijdragen tot de harmonisering van de annulering.Voorbeelden van de structuur van de cancellationtoken teken zelf.Het teken is, zonder het gebruik van een fabrikant wordt geconcretiseerd.In tegenstelling tot de cancellationtokensource klasse, creëer je een voorbeeld van het lezen en de eigenschappen van p.m. p.m... Het 4 wordt een lichte structuur cancellationtoken genoemd, voorziet in een mechanisme om synchrone of asynchrone operatie.Hier is de structuur van een aantal belangrijke leden:,, iscancellationrequested - booleaanse eigenschap van de code of het aanvaardbaar is geannuleerd of ingetrokken heeft gevraagd, geregistreerd als een call - back - de Commissie, op verzoek van geannuleerd.Steun voor de afschaffing van de oprichting, taken, als je door een teken van de taak' bovendien is belast met de uitvoering van de aannemer.Teken nog hebben in de Commissie de toegang tot de in zodat je toegang kunnen krijgen tot het kenmerken en methoden.Deze omvatten iscancellationrequested eigenschap, die weer een boolean, met de vermelding of de annulering of niet vereist is.Steun voor de afschaffing van het laatste deel van uw taak is ervoor te zorgen dat de in een daadwerkelijke staat niet in het systeem.Op de lange termijn in het mandaat van de missie werd afgelast, als je moet regelmatig worden gecontroleerd, als er in de voor uitgang op te ruimen.Dit kan ook het dossier af te sluiten of een databank in verband met de voltooiing van de transactie en de verwerking, of middelen.Opgemerkt moet worden dat de verzoeken om opheffing van de verplichte taken zal nooit stoppen.Als je het negeren van een verzoek tot annulering, je zal de voortzetting van de uitvoering van de taken, in afwachting van de voltooiing van het of tot een uitzondering.We kunnen in de volgende in het eerste voorbeeld van deze vorm van zien.In de belangrijkste methode creëren we een cancellationtokensource en gebruik het voor het verkrijgen van een teken.En dan zetten we dit teken voor onze missie' van de fabrikant.In het geval van de definitie van de taken enlambda uitdrukking 39; mobiele telefoon een aparte benadering.Dit is de taak van de afschaffing van de structuur van de beter te zien.Na het begin van de missie, we wachten op enter na de afschaffing van de taak door een beroep te doen op de cancellationtokensource en' voor de annulering.Het gebruik van het teken te vertellen, ze moeten stoppen met het mandaat.De methode, dolongrunningtask, bekend als uit de parallelle taken.Het model voor een lange tijd in de loop van de cyclus, honderd keer, stop eventjes tussen elke stap.Vóór het begin van de cyclus, iscancellationrequested eigenschap token gecontroleerd.Want het is mogelijk dat het geannuleerd voordat het is begonnen met de uitvoering van deze controles, waardoor het wordt gestopt, en niet de uitvoering van een baan.De vlag van de iscancellationrequested controleer elke stap van de procedure.Als het waar is, is dat een boodschap, en in de loop van de uitgang.Probeer de code, en om een aantal herhalingen volgens de in de vóór de voltooiing van de missie afgelasten.,, static void Main() ,, { ,, var tokenSource = new CancellationTokenSource(); ,, var token = tokenSource.Token; ,, var task = new Task(() => DoLongRunningTask(token), token); ,, Console.WriteLine("Press Enter to cancel"); ,, task.Start(); ,, Console.ReadLine(); ,, tokenSource.Cancel(); ,, task.Wait(); ,, task.Dispose(); ,, Console.WriteLine("Press Enter to exit"); ,, Console.ReadLine(); ,, } ,, static void DoLongRunningTask(CancellationToken token) ,, { ,, if (token.IsCancellationRequested) ,, { ,, Console.WriteLine("Cancelled before long running task started"); ,, return; ,, } ,, for (int i = 0; i <= 100; i++) ,, { ,, Console.WriteLine("{0}%", i); ,, Thread.Sleep(1000); ,, if (token.IsCancellationRequested) ,, { ,, Console.WriteLOntvangsten ("af");,,,,,,,, breekt;}},