【发布时间】:2011-10-30 16:22:29
【问题描述】:
我目前有这个代码(感谢这里的帮助)。我需要将第一个 ProcessMessage 创建为线程并同步运行第二个 ProcessMessage(在当前线程上),然后在单个线程上执行 Join。否则,我将让三个线程有效地做两件事。我该如何修改它来完成它?我在 .NET 3.5 上
Thread thRegion1 = new Thread(() =>
{
if (Region1.Trim().Length > 0)
{
returnMessage = ProcessTheMessage(string.Format(queueName, Region1));
Logger.Log(returnMessage);
}
});
Thread thRegion2 = new Thread(() =>
{
if (Region2.Trim().Length > 0)
{
returnMessage = ProcessTheMessage(string.Format(queueName, Region2));
Logger.Log(returnMessage);
}
});
thRegion1.Start();
thRegion2.Start();
thRegion1.Join();
thRegion2.Join();
【问题讨论】:
-
运行此代码的线程没有完成任何工作。所以只启动一个线程。
标签: c# multithreading .net-3.5 synchronization