本节书摘来自华章出版社《深入理解Android》一书中的第3章,第3.1节,作者孟德国 王耀龙 周金利 黎欢,更多章节内容可以访问云栖社区“华章计算机”公众号查看
3.1 WTF库概述
WTF全称Web Template Library,是非常杰出的代码库。作为WebKit的主要基础库,它优雅地实现了smart ptr、string、container,提供了跨平台的原子操作、时间封装、线程封装,以及高效的内存管理手段。在WebCore代码中几乎看不到STL的身影,取而代之的就是WTF库代码(当然WTF本身的实现以及porting用到了STL),可以说WTF是学习WebKit代码的“钥匙”。
本章挑选了WTF中最常用、最重要的基础C++工具类来分析,包括智能指针类(OwnPtr和RefPtr)、断言、原子操作、内存管理、常用容器、线程封装等。在分析这些工具的同时还将介绍与之关联的Android 平台crash dump,以及WebKit运行时结构等,透过实现分析可以明了其原理及使用。