SDL_UpdateTexture线程安全吗?

Is SDL_UpdateTexture threadsafe?

本文关键字:安全 线程 UpdateTexture SDL      更新时间:2023-10-16

我有一个程序,可以处理大小为 1920x1080 的纹理,并在多线程环境中通过SDL_UpdateTexture更新纹理。纹理在线程之间"平铺",因此线程 1 将更新与线程 2 不同的区域。例如,t1将更新区域0,0,64,64t2将更新65, 65, 128, 128

在这种情况下,是否可以在没有任何锁定的情况下使用SDL_UpdateTexture,以便线程可以同时更新纹理?

看看

OpenGL 上的多线程渲染

但是,简而言之:GL 不是线程安全的(甚至不是线程感知的(。在 Windows 上,不能一次在多个线程上激活上下文,因此如果不同步线程,您将无法更新纹理(这违背了多线程的目的(。我敢打赌,在Linux上是一样的。