gpt4 book ai didi

windows - Electron Windows 应用程序关闭未结束线程

转载 作者:行者123 更新时间:2023-12-03 11:09:38 25 4
gpt4 key购买 nike

我有一个在 Windows 上运行的 Electron 应用程序,它在主窗口上有一些控件和一个取消按钮。我注意到当它运行时我看到两个线程,我假设主线程和渲染器线程。单击取消按钮时,渲染器向主线程发送 IPC 消息,主线程调用 app.quit。在这些条件下,两个线程结束。如果我右键单击应用程序的 Windows 任务栏中的图标并选择“关闭”,则线程仅在应用程序在 VSCode 调试器下运行时结束,当应用程序在没有调试器的情况下运行并且同样完成时,两个线程仍然存在.

我该如何调试?关于为什么会发生的任何建议。

在调试器下,我看到主线程中的 close 被捕获,并且 app.quit 被调用。

更新:由于该应用程序使用 Electron 1.7.9,我已将其更新为使用 2.0.8,以防万一这是一个已解决的问题。但是,对于 2.0.8,问题仍然存在。

锡德

最佳答案

感谢 Electron Slack 社区的一些投入,我已经解决了这个问题。我的错误在于我调用 app.quit() 方法的方式。

我的代码在“关闭”事件上处理 MainWindow 并在该事件处理程序中执行 app.quit() 方法。

关闭应用程序的正确方法是处理应用程序“window-all-closed”事件并在那里执行 app.quit() 方法。

这是发送给我以帮助我解决问题的 Electron 应用程序框架 main.js 的要点。

https://gist.github.com/sidprice/612cb49cec923eeb94cfcddf1736c181

锡德

关于windows - Electron Windows 应用程序关闭未结束线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52105917/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com