简述
本系列第三篇文章,分析一下LevelDB中的Env,这个文件主要是为了考虑了移植和灵活性,所以把系统相关的一些处理(文件/进程/时间之类)抽象成Env,用户可以自己实现响应的接口作为options传入。默认使用自带的。
这么封装的好处是显而易见的:跨平台会更加简单。客户端只需要调用接口抽象出来的一致性方法,不同平台下的代码更加一致,值得借鉴。
还是选择代码注释的方式(我只是个翻译工。)
include/leveldb/env.h
1 | // Env是leveldb中实现用来访问操作系统功能(如文件系统等)的接口 |