有没有办法暂时停止Qt渲染?
Is there a way to stop Qt rendering temporarily?
我正在运行 linux 的 ARM 嵌入式设备上使用 Qt Quick 2D Renderer 开发 qml UI。该设备有一个 LCD 屏幕和一些闲置时的待机模式。
出于某些原因(网络需要保持活跃),暂停到 RAM 不是一个选项。但是,为了降低待机模式下的功耗,最好停止 UI 渲染。这可以用一些 Qt 来实现吗 API?
直接 (Qt::DirectConnection
) 连接到 QQuickWindow::beforeRendering()
信号。那将在渲染线程中,程序可以在您的 mutex/condition_variable 上等待。 GUI 线程在此步骤中解锁,因此应用程序逻辑将继续工作。
http://doc.qt.io/qt-5/qtquick-visualcanvas-scenegraph.html
也可以使用 QQuickRenderControl
覆盖整个序列。
我正在运行 linux 的 ARM 嵌入式设备上使用 Qt Quick 2D Renderer 开发 qml UI。该设备有一个 LCD 屏幕和一些闲置时的待机模式。
出于某些原因(网络需要保持活跃),暂停到 RAM 不是一个选项。但是,为了降低待机模式下的功耗,最好停止 UI 渲染。这可以用一些 Qt 来实现吗 API?
直接 (Qt::DirectConnection
) 连接到 QQuickWindow::beforeRendering()
信号。那将在渲染线程中,程序可以在您的 mutex/condition_variable 上等待。 GUI 线程在此步骤中解锁,因此应用程序逻辑将继续工作。
http://doc.qt.io/qt-5/qtquick-visualcanvas-scenegraph.html
也可以使用 QQuickRenderControl
覆盖整个序列。