如何清除/杀死WPF应用程序中不会使CPU过载的任务?

问题描述

我目前正在使用WPF构建信息亭应用程序。我有一个主窗口和几个用户控件(页面)。在最后一页之后,该应用程序将重定向首页以重新开始整个过程​​。 我注意到,在运行了三次完整的流之后,该应用将由于cpu和内存过载而崩溃/挂起。 但是我通过声明以下内容解决内存过载的问题

    [DllImport("KERNEL32.DLL",EntryPoint = "SetProcessWorkingSetSize",SetLastError = true,CallingConvention = CallingConvention.StdCall)]
    internal static extern bool SetProcessWorkingSetSize(IntPtr pProcess,int dwMinimumWorkingSetSize,int dwMaximumWorkingSetSize);

    [DllImport("KERNEL32.DLL",EntryPoint = "GetCurrentProcess",CallingConvention = CallingConvention.StdCall)]
    internal static extern IntPtr GetCurrentProcess();

并将此代码添加到Unloaded()事件中。

        IntPtr pHandle = GetCurrentProcess();
        SetProcessWorkingSetSize(pHandle,-1,-1);

代码能够解决内存过载问题,但是cpu过载问题仍然存在。有人可以帮我吗?我应该在Unloaded()事件中添加些什么来释放cpu

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)