CefView / QCefView

A Qt Widget encapsulated CEF view based on QWidget
https://cefview.github.io/QCefView/
GNU Lesser General Public License v2.1
502 stars 133 forks source link

[BUG]: 关闭出现进程残留问题 #379

Open lofonder opened 5 months ago

lofonder commented 5 months ago

Describe the bug 【Bug描述】

使用了113、109CEF版本都出现这个问题。 然后就是断点在调用CefShutdown();后系统出现进程残留。而且启动测试程序必须加入 config.addCommandLineSwitch("single-process"); 否则会出现GPU 错误问题。 这个退出进程残留的问题我看已经提交修复了代码了,不知道为何还会出现这个问题

To Reproduce 【复现步骤】

  1. Go to '...'
  2. Click on '....'
  3. Scroll down to '....'
  4. See error

Expected behavior 【正确的预期行为】

...

Screenshots 【截图】

void QCefContextPrivate::uninitializeCef() { logI("QCefContextPrivate::uninitializeCef()-begin"); if (!pApp) return; logI("QCefContextPrivate::uninitializeCef()-1"); pAppDelegate = nullptr; pApp_ = nullptr;

// shutdown the cef CefShutdown(); logI("QCefContextPrivate::uninitializeCef()-2"); // clean job object if (windowsJobHandle) { logI("QCefContextPrivate::uninitializeCef()-3"); ::CloseHandle(windowsJobHandle); windowsJobHandle_ = nullptr; } logI("QCefContextPrivate::uninitializeCef()-end"); }

...

Environment 【BUG产生的环境】

Additional context 【更多额外信息】

这是系统输出信息 destroy browser from native CCefClientDelegate is being destructed QCefView(0x35718c8) is being destructed destroy browser from native CCefClientDelegate is being destructed [INFO]QCefContext::~QCefContext() [INFO]QCefContext::uninit() [INFO]QCefContextPrivate::uninitializeCef()-begin [INFO]QCefContextPrivate::uninitializeCef()-1 CCefAppDelegate is being destructed [0217/225807.349:WARNING:spdy_session.cc(3491)] Received HEADERS for invalid stream 7 [0217/225807.349:WARNING:spdy_session.cc(3491)] Received HEADERS for invalid stream 7 这个后面进程就开始残留了。

...