在QT Embedded linux中使用GUI Thread之外的pixmaps是不安全的

时间:2011-07-28 04:59:49

标签: qt

我正面临一个问题

“在QT Embedded linux中使用GUI Thread之外的pixmaps是不安全的” “无法设置父级,新父级在不同的线程中”

感谢任何帮助。

2 个答案:

答案 0 :(得分:4)

QPixmap依赖于显示器,专为在屏幕上显示图像而设计和优化。

它访问底层图形系统。大多数图形系统都不是线程安全的。因此警告。

尝试使用QImage。

答案 1 :(得分:0)

由于屏幕是设备,因此一次只能有一个线程访问它以进行显示。 Qt已经指定他们的“GUI线程”是唯一一个这样做的人。

QObjects,例如QWidgets,与创建它们的线程相关联,以跟踪所有这些。如果对象的层次结构与一个线程关联,并且您尝试将父级更改为另一个线程中的对象,那么就会出现问题...因为子级可能依赖于该特定线程而无法使用它工作

EG。如果已经设置了对象的父级,则不能使用moveToThread(object);