在这种情况下,对于什么算作“主要”线程存在一些困惑。
我在第一个阻塞的线程中运行QT。我想在辅助线程中运行SDL2,所有调用和启动都与此线程隔离。
这是否允许SDL2正确运行并且稳定,因为文档声明它需要在主线程中?此问题SDL2 two windows in different threads也指出你不能在“主”线程之外使用某些SDL2函数。
在这种情况下是主线程,就SDL2而言,第一个包含QT的线程,或者第二个线程SDL2是否已在初始化?
答案 0 :(得分:0)
这只是一个猜测,但是在Linux中,“主线程”的概念是进程中的第一个线程。以下是查看线程是否为主线程的方法:Check if current thread is main thread
因此,要回答您的问题,您不能让QT作为第一个线程运行,而SDL2作为第二个线程运行。您要么需要: