.


:




:

































 

 

 

 


, StartNew () tsk .




Task tsk = Task.Factory.StartNew(MyTask);

MyTask ().

StartNew () , . .

-

, , : - . , - . . - , . - . , - .

- . MyTask () -.

// - .

Using System;

Using System.Threading;

Using System.Threading.Tasks;

class DemoLambdaTask { static void Main() {

Console.WriteLine(" .");

// - .

Task tsk = Task.Factory.StartNew(() => {

Console.WriteLine(" ");

for (int count = 0; count < 10; count++) {

Thread.Sleep(500);

Console.WriteLine(" " + count);

}

Console.WriteLine(" ");

});

// tsk. tsk.Wait();

/ tsk. tsk.Dispose();

Console.WriteLine(" .");

}

}

.

.

.

- , , tsk. Dispose () , tsk. Wait (). , Dispose () . , tsk. Dispose () tsk.Wait (). , .

TPL . , . , , ContinueWith (), Task. :

public Task ContinueWith(Action<Task> _)

_ , . Action Task. , Action, , .

public delegate void Action<in T>(T obj)

Task.

.

// .

Using System;

Using System.Threading;

Using System.Threading.Tasks;

class ContinuationDemo {

// , , static void MyTaskO {

Console.WriteLine("MyTask() ");

for(int count = 0; count < 5; count++) {

Thread.Sleep(500);

Console.WriteLine(" MyTaskO " + count);

}

Console.WriteLine("MyTask ");

}

// , , static void ContTask(Task t) {

Console.WriteLine(" ");

for(int count = 0; count < 5; count++) {

Thread.Sleep(500);

Console.WriteLine(" " + count);

}

Console.WriteLine(" ");

}

static void Main() {

Console.WriteLine(" .");

// .

Task tsk = new Task(MyTask);

// .

Task taskCont = tsk.ContinueWith(ContTask);

// , tsk.Start ();

// . taskCont.Wait();





:


: 2016-12-03; !; : 358 |


:

:

, , .
==> ...

1613 - | 1285 -


© 2015-2024 lektsii.org - -

: 0.013 .