我有一个应用程序,我需要打开许多异形的表单并独立运行。然后我的应用程序继续阻止长时间运行的操作(使这些操作不可能异步)。所以我想用自己的消息泵在一个单独的线程上运行这些表单。
有什么办法吗?
答案 0 :(得分:3)
Application.Run();
这应该在自己的线程上启动表单,并使用自己的消息泵。
由于每次调用Application.Run时都会创建一个新的UI线程,因此这应该可以完成您要查找的内容。
编辑#2:http://msdn.microsoft.com/en-us/library/system.windows.forms.application.run(VS.71).aspx
文档有点含糊不清。我总是通过使用ThreadPool完成长时间运行操作,并定期将控件回调到表单以呈现状态,但听起来你可以使用Application.Run()生成多个表单。