试图掌握TPL.
为了好玩,我尝试用随机睡眠创建一些任务来查看它是如何处理的.我瞄准火灾并忘记模式..
static void Main(string[] args)
{
Console.WriteLine("Demonstrating a successful transaction");
Random d = new Random();
for (int i = 0; i < 10; i++)
{
var sleep = d.Next(100, 2000);
Action<int> succes = (int x) =>
{
Thread.Sleep(x);
Console.WriteLine("sleep={2}, Task={0}, Thread={1}: Begin successful transaction",
Task.CurrentId, Thread.CurrentThread.ManagedThreadId, x);
};
Task t1 = Task.Factory.StartNew(() => succes(sleep));
}
Console.ReadLine();
}
Run Code Online (Sandbox Code Playgroud)
但我不明白为什么它输出所有行到控制台忽略睡眠(随机)
有人可以向我解释一下吗?