在页面渲染过程中,Chromium需要创建多个3D上下文的实例,这些上下文实例彼此之间不但需要共享资源,还需要在同一个线程中执行GL操作,这就要求Chromium能够有效地处理多上下文的切换。本文介绍OpenGL上下文等基本概念,以及Chromium需要创建多个3D上下文的原因。
我的CSDN博客链接
Part I介绍了OpenGL上下文和绘制表面等基本概念,以及Chromium为什么需要多个3D上下文。本文将继续这个话题,探讨Chromium为什么引入虚拟3D上下文,以及虚拟上下文之间切换有何不同。
线程局部存储(Thread Local Storage), 简称TLS,提供了一种存储线程私有数据的方式,每个线程的私有数据对其他线程均不可见。Chromium系统中几乎每个线程都有私有数据,在TLS数量有限的系统上,可能会因为无法分配足够的TLS而导致Chromium崩溃。本文将深入分析Chromium是如何绕开TLS数量限制的。
Android KitKat一项重要的更新就是WebView采用Chromium/Blink渲染引擎,本文简要的叙述了新版WebView的主要特性、需要进一步改进的地方以及Chromium WebView的代码结构等。
Copyright © 2005-2024 51CTO.COM 版权所有 京ICP证060544号