c#如何让线程等待
本文关键字:线程 等待 | 更新日期: 2023-09-27 18:16:37
Form form1 = new Form();
Thread newThread = new Thread(() =>
form = form1
);
newThread.Start();
while(form == null)
{
WAIT?
}
谁能帮助我如何使线程等待,然后继续执行?不要使用thread。sleep?
您可以使用ManualResetEvent
:
var mre = new ManualResetEvent(false);
Form form1 = new Form();
Thread newThread = new Thread(() => {
form = form1;
mre.Set();
});
newThread.Start();
mre.WaitOne();
正如FLQ提到的,你可以使用线程。连接,这将允许线程完成它正在做的事情,你可以在那一点之后继续…然而,因为你是一个窗体应用程序工作,你可能会阻塞UI线程,如果你从那里加入…
你应该尝试不同的模式来修复这个问题,而不是阻塞…使用委托或事件来表示某事何时完成…也称为异步处理。