示例#1
0
        public void TestMethod1()
        {
            //quite las // para que pueda ir viendo los ejemplos en ejecucion.
            Examples example = new Examples();
            //example.TaskUsage();//como el metodo Task pide ayuda de otro thread , se demuestra en el output el trabajo alternado entre dos threads.

            //example.TaskReturningValue();//es un Task<string>, se crea un nuevo hilo que va a cierto metodo y cuando lo termina retorna un resultado, en este caso, de tipo string.
            //example.TaskReturningValueStatus();//retorna cuando esta ha sido created, cuando is running y RanToCompletion.
            //example.NotificationsContinueWith();//encadena tasks. invica cual va a continuar despues de un task padre y bajo que condiciones.
            //example.ExeptionHandling();//manejo con try catch y explicacion de bubbling.
            //example.ExeptionHandlingContinueWith();//manejo de exepcion con continue.
            //example.CancellingTask();//cancelacion de un thread a travez de un Token.
            //example.LongRunningTask();//un parametro que se puede pasar para indicarle que la tarea se va a tardar y que considere si se crea un thread o se saca del pool, lo que se evalue pertinente.
            //example.ParallelIterations();//utiliza varios threads para ejecutar un loop, pero hay riesgo de hacer un race condition.,ademas, puede ser que unos hilos terminen primero que otros.
            //example.ParallelIterationsExceptions();//como cachar una exepcion en parallel.
            //example.ParallelLoopCancelation();//una variable va afuera y envia un mensaje de cancelacion a otra variable que va dentro del parallel loop , estas dos variables se comunican y entonces se cancela el loop.
            example.ParallelOptions();//se le puede poner un break al loop y tambien otra opcion es indicarle con cuantos hilos de ejecucion se va ayudar el loop.
        }