当前位置:首页 > 公众号精选 > 程序喵大人
[导读]前一段参与了一个项目,项目内部使用了chromium作为基础库,这也是我第一次接触chromium,到现在差不多半年时间,这里说说使用心得。

前一段参与了一个项目,项目内部使用了chromium作为基础库,这也是我第一次接触chromium,到现在差不多半年时间,这里说说使用心得。


优点

先进的多线程任务处理理念:少用共享内存,少用锁,多用任务分发,特定的task放在固定的sequence中。具体可以看这篇文章:

多线程开发中,多用消息传递,少用锁


跨平台,且功能强大,比如网络通信、进程间通信、如何启动进程并传递参数等,都有比较好用的封装。


有自己的一套编译构建规则GN,这貌似不能算作一个优点,毕竟学习成本高,但是它和bazel类似,你会感觉很熟悉。配置了很严格的编译参数,确保代码的健壮性。很多在其它地方(-Wall -Werror等)可以编译通过的代码,在chromium里都编译不通过,具体为啥我还没来得及深入研究。


内部集成了很多检测机制,编译时检查和运行时检查,可以检查某个操作是否在特定的sequence中,如果不在的话,debug模式时会触发断言。这样可以确保很多操作是线程安全的,进一步增强代码的健壮性。


具体可以看看这篇文章:https://aijishu.com/a/1060000000091082#item-2-1


缺点

整个chromium太大了,我自己本地看了下,除去.git,大概有60G左右,配置它的环境非常麻烦,需要翻墙,拉取它所有的依赖库也特别耗时。


因为项目特别大,编译时间特别长,特别是全量编译。


项目大,其实不适合做普通项目的基础库,普通项目用不到chromium的大多数功能,还要忍受它占用空间大,配置环境麻烦,编译时间长的缺点。而且编出来的可执行文件体积很大,特别是做SDK,如果对体积有要求的话,估计不能满足要求。


不能引用其他的第三方C++动态链接库或者静态链接库,因为它内部集成了一套自己魔改的C++源码,使用的这套C++源码做的编译,和外部的三方库不兼容。比如一个std::string,正常库中的符号应该是std::basic_string,而在chromium中,它却是std::__1::basic_string,导致和其他库不兼容,集成时候会报找不到相关符号。


因为它内部集成了一套自己魔改的C++源码,所以裁剪时也不太方便,其中的base、sql等模块裁剪还挺容易。

而有些模块需要强依赖这套内部的C++源码才能编译成功,无法裁剪,最近我也是在裁剪这块踩了好多坑。


google还提供了一个mini-chromium project,其实就是base的子集,就是给那些想用base作为基础库的项目使用的,但是这个project功能太少,用处不大。


遇到了问题在网上找答案不是很方便,毕竟用的人少。


建议

貌似edge浏览器就是在chromium的基础上开发的,但小项目建议就别用它了,太麻烦,个人看法,单纯从基础库的角度来说,不如boost方便。


不知道大家对chromium怎么看,可以留言聊聊。


本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

微软今天宣布,它为Linux提供了微软edge的预发布版本,现在所有主要的办公室和平台都可以使用。动机。动机他们使用Ubuntu、Debian、Fedora和openSUSE的版本。现在就可以下载Microsof...

关键字: chromium edge Linux

三星Internet是最受欢迎的互联网浏览器。Chrome包含许多其他谷歌Chrome没有的功能。上个月早些时候,浏览器对beta字符串进行了一次重要的更新,它类似于chrome12.1.2.5,现在已经安装在一...

关键字: internet Android chromium

8 月 8 日消息 据 windowslatest 报道,上周五一名独立的开发者在微软商店上发布了开源的 Chromium 浏览器。这款浏览器是由一个名为 "Store Ports" 的发行商非正式

关键字: chromium 微软 浏览器

谷歌的Android for Chrome小组成员本周参加了AMA。 后来有网友评论,软件开发人员,技术程序经理、交互设计师、产品支持经理和开发律师组成的团队回答了许多问题。

关键字: Android chromium polymer

安装自动Windows 10更新补丁KB4559309后,一些用户抱怨说,在他们的计算机桌面上启动会花费更长的时间。 根据社区论坛主持人的说法,用户已经在Microsoft的社区论坛上报告了此问题,并且Microsoft...

关键字: chromium Linux Windows

原标题:微软将开始向更多Windows 10用户推送新版Edge 来源:cnBeta.COM 对于消费者和企业来说,传统版微软Edge时代将在未来几个月内结束。今年1月,微软宣布Chromium Ed

关键字: chromium Windows 微软 浏览器

目前,苹果仅在Mac、iPhone和iPad设备上提供 Safari 浏览器,近日,一名苹果员工邀请Chromium开发人员在Chromium 80的问题追踪工具中激活“智能跟踪预防”技术的标记。

关键字: chromium 浏览器

近日,据外媒报道,基于Chromium内核打造的全新Microsoft Edge浏览器将于2020年1月15日正式发布! 此前也有消息称,微软希望当Windows 10 20H1也就是2020年春季

关键字: chromium edge 微软 microsoftedge

11月3日消息 据the Verge消息,微软为Chromium版Edge浏览器准备了新的Logo,目前它被发现隐藏于最新的Canary版本中的迷你复活节彩蛋游戏之中。新的Logo样式变得更加圆润且富

关键字: chromium 微软 edge浏览器

基于Chromium内核打造的全新Microsoft Edge浏览器将于2020年1月15日正式发布!

关键字: chromium edge 微软
关闭