假设我有一个像
这样的线程var th = new Thread(new ThreadStart(Method1));
th.Start();
th.Join(); //// wait for Method1 to finish
//// how to execute the Method2 on same thread th?
我想在完成Method1方法的同一个线程实例上执行Method。
我该怎么做?
答案 0 :(得分:3)
这是你想要做的吗?
using System;
using System.Threading;
public class Program
{
public static void Main()
{
var th = new Thread(new ThreadStart(() =>
{
Method1();
Method2();
}
));
th.Start();
th.Join();
}
static void Method1()
{
Console.WriteLine("Method 1");
}
static void Method2()
{
Console.WriteLine("Method 2");
}
}
答案 1 :(得分:2)
如果您使用的是任务并行库,则可以使用continuewith来排列任务。
Task.Factory.StartNew(() => action("alpha"))
.ContinueWith(antecendent => action("beta"))
.ContinueWith(antecendent => action("gamma"));