qt为什么只能在主线程里进行UI操作?解决方案

qt为什么只能在主线程里进行UI操作?
好几位大神告诉我qt只能在主线程new一个ui和进行一些ui相关的操作
我不懂为什么,期待大神解答?

------解决方案--------------------
探讨

引用:
系统图形系统的限制
每个UI库都有这样的限制
但是我在线程里面new一个widget是可以正常显示的啊?我同事告诉我说是因为在主线程里面运行的app->exec(),所以这样次线程里面的ui无法接受到系统事件,是不是这样的原因啊?

------解决方案--------------------
对Qt而言,一个进程里和窗口系统(譬如Win32的GDI, linux下的X11)UI事件关联的只有主UI线程,而并没有设计成多线程和系统窗口系统同时交互(复杂性,安全性,性能等原因),这应该是根源。