多线程中EGL如何共享Context

线程A使用opengl,线程B也使用opengl,线程A中创建的纹理需要在线程B中可以直接使用,但是这两个线程不能使用同一个egl上下文进行互斥,用共享egl上下文,就是线程A用contextA,线程B使用contextB,如何实现?

HarmonyOS
2024-09-18 12:35:07
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
zxjiu

eglCreateContext​(EGLDisplay display, EGLConfig config, EGLContext shareContext, int[] attribList)第三个参数支持传入非空的share_context ,可解决这个问题

步骤如下:

在线程A中创建contextA:

m_eglContext = eglCreateContext(m_eglDisplay, m_eglConfig, EGL_NO_CONTEXT, CONTEXT_ATTRIBS);

在线程B中创建contextB时传入共享的contextA:

m_eglContext2 = eglCreateContext(m_eglDisplay, m_eglConfig, m_eglContext, CONTEXT_ATTRIBS);
分享
微博
QQ
微信
回复
2024-09-18 15:54:21
相关问题
如何实现多线程数据共享
2200浏览 • 1回复 待解决
ArkTs多线程方案如何保证线程安全
2557浏览 • 2回复 待解决
如何在鸿蒙系统实现多线程操作?
197浏览 • 1回复 待解决
如何使用taskpool实现多线程
1108浏览 • 1回复 待解决
TaskPool线程内存如何共享
2092浏览 • 1回复 待解决
HarmonyOS多线程使用?
163浏览 • 0回复 待解决
Worker线程内存如何共享
2280浏览 • 1回复 待解决
Actor线程内存如何共享
415浏览 • 1回复 待解决
HarmonyOS 多线程写法限制
121浏览 • 1回复 待解决
如何实现跨线程数据共享
249浏览 • 1回复 待解决
HarmonyOS是否支持多线程
108浏览 • 0回复 待解决
HarmonyOS 多线程锁问题
441浏览 • 1回复 待解决
HarmonyOS 多线程并发相关问题
232浏览 • 1回复 待解决
是否支持Context线程传递
1851浏览 • 1回复 待解决
HarmonyOS关于多线程的问题
428浏览 • 1回复 待解决