OpenHarmony开发者论坛
标题:
EGL绘制操作是否只能在主线程,可以放子线程中执行吗?
[打印本页]
作者:
北向实践与赋能
时间:
2024-1-4 11:31
标题:
EGL绘制操作是否只能在主线程,可以放子线程中执行吗?
[md]EGL绘制操作是否只能在主线程,可以放子线程中执行吗?
[/md]
作者:
北向实践与赋能
时间:
2024-1-4 11:32
标题:
EGL绘制操作是否只能在主线程,可以放子线程中执行吗?
[md]**关键字**
EGL 绘制,主线程,子线程
**解决方案**
EGL操作可以在子线程中操作,可以通过创建SharedContext
创建SharedContext示例代码如下
```ts
void CreateShareEglContext()
{
if (renderContext == nullptr) { // renderContext是主线程context
RS_LOGE("renderContext_ is nullptr");
return;
}
eglShareContext = renderContext->CreateShareContext();
if (eglShareContext == EGL_NO_CONTEXT) {
RS_LOGE("eglShareContext is EGL_NO_CONTEXT");
return;
}
if (!eglMakeCurrent(renderContext->GetEGLDisplay(), EGL_NO_SURFACE, EGL_NO_SURFACE, eglShareContext)) {
RS_LOGE("eglMakeCurrent failed");
return;
}
}
```
[/md]
欢迎光临 OpenHarmony开发者论坛 (https://forums.openharmony.cn/)
Powered by Discuz! X3.5