近来在学习Eugene Agafonov编写的《C#多线程编程实战》(译),做些笔记也顺便分享一下^-^
本节将展示如何设置相互依赖的任务。我们将学习如何创建一个任务,使其在父任务完成后才会被运行。
using System;
using System.Threading.Tasks;
using System.Threading;
namespace 组合任务
{
class Program
{
static void Main(string[] args)
{
var firstTask = new Task<int>(() => TaskMethod("First Task", 3));
var secondTask = new Task<int>(() => TaskMethod("Second Task", 2));
firstTask.ContinueWith(t => Console.WriteLine("The first answer is {0}.Thread id: {1},is thread pool thread: {2}",
t.Result,
Thread.CurrentThread.ManagedThreadId,
Thread.CurrentThread.IsThreadPoolThread