c - 哪个是浏览器选项卡 : multi-thread or multi-process? 的更好选择

标签 c multithreading browser process

<分区>

我想知道在 Web 浏览器中实现选项卡哪个是更好的选择? (例如:Firefox 的标签使用多线程,而 Google Chrome 使用多进程......)

最佳答案

这取决于您的实现质量和您的优先级。线程有可能使用更少的内存/共享更多的内存,并且可能比进程表现更好或更差,具体取决于您使用的同步原语。另一方面,由于浏览器实现的质量非常糟糕,当一个不良站点欺骗浏览器分配无限量或更糟的内存时,您真的希望整个浏览器和所有选项卡崩溃吗?

多进程浏览器实现很像 OpenSSH、vsftpd 等中的权限分离模型。您牺牲了一些资源来让内核保护您免受代码中的错误影响。

关于c - 哪个是浏览器选项卡 : multi-thread or multi-process? 的更好选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4263124/

相关文章:

报警时多次调用无限循环代码

c++ - "CMakeLists.txt"似乎丢失了

java - Java将线程缓存刷新到实际副本时

browser - 集成在浏览器上的 emacs 编辑器

c - 如何在 Linux 应用程序中获取有关以太网的统计信息?

c - "One or more output arguments not assigned during call to "input_4”是什么意思?

C++ 多线程互斥锁问题

java - 如果启动了较新的实例,则终止程序的较旧实例

web-services - 如何发布可通过浏览器访问的 Web 服务生成的数据文件

javascript - 如何检测浏览器是否启用了最大长度功能