我目前有一个启动中央逻辑类的项目(它使用其他一些 .dll 来检查硬件或连接到数据库)。之后,将启动一个 WPF 表单。这种形式使用中心逻辑的信息。
目前,应用程序正在像这样启动:
public void StartTheWholeBunch()
{
Thread thread = new Thread(() =>
{
applicationLogic = new ApplicationLogic();
Application app = new Application();
app.Run(new MainWindow(applicationLogic));
});
thread.IsBackground = true;
thread.SetApartmentState(ApartmentState.STA);
thread.Start();
thread.Join();
}
MainWindow 是我要使用的两个 WPF 应用程序之一。因此,第二个将加入有趣的 oa 后期阶段。
当前设置正在运行。一切都相互沟通,没有问题。我只是想知道这个的使用Thread
是否正确。当我离开applicationLogic = new ApplicationLogic();
线程时,事情肯定会出错(例如,创建 MessageBox 弹出窗口时,整个应用程序将在此处冻结)。
我应该把所有东西都放在一个线程中吗?还是将所有内容拆分和/或创建线程池是更好的做法?我怎样才能以最好的方式接近呢?