【问题标题】:MVVM application with background thread doesn't close具有后台线程的 MVVM 应用程序未关闭
【发布时间】:2016-05-31 17:19:56
【问题描述】:

我正在使用 MVVM Light,在我的视图模型中我初始化了一个 Phone 对象,该对象必须不断等待新的呼叫。

线程声明如下: coreLoop = new Thread(LinphoneMainLoop); coreLoop.IsBackground = false; coreLoop.Start();

关闭主窗口时,应用程序永远不会关闭。 我尝试了ViewModel.Cleanup,析构函数,并实现了IDisposable。 这些方法都不起作用,没有一个到达断点。

我也希望避免处理主窗口的关闭事件。

【问题讨论】:

    标签: c# wpf multithreading mvvm-light


    【解决方案1】:

    您应该阅读此page 的备注部分。

    如果Thread 对象属性IsBackground 未设置为true,则意味着它是Foreground 线程,应用程序必须等待它完成才能关闭进程。如果它是一个Background 线程,这意味着它将终止线程而不等待它完成。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-01-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多