CEF基于Chromium,也是多进程模型。关于进程模型,参考这里:https://www.chromium.org/developers/design-documents/process-models。我还看到一篇韩国人写的renderer process的文章,也很不错,在这里:http://chromium-kr.blogspot.com/2012/06/about-renderer-process.html。
CEF的进程模型,这里也有一部分描述:https://bitbucket.org/chromiumembedded/cef/wiki/GeneralUsage。CEF3默认使用multiple processess,CEF1默认支持较为稳定的的单进程模型。
Chromium的进程分为好几类(content/public/common/content_switches.cc中有进程参数定义,content/app/content_main_runner.cc中对不同进程做了分支处理):
- browser(没有type参数时默认为browser进程)
- renderer(kRendererProcess)
- plugin(kPluginProcess)
- ppapi-broker(kPpapiBrokerProcess)
- ppapi(kPpapiPluginProcess)
- sandbox-ipc(kSandboxIPCProcess)