永发信息网

为什么 MySQL 使用多线程,而 Oracle 和 PostgreSQL 使用多进程?

答案:2  悬赏:70  手机版
解决时间 2021-12-30 12:34
  • 提问者网友:寂寞撕碎了回忆
  • 2021-12-29 15:28
为什么 MySQL 使用多线程,而 Oracle 和 PostgreSQL 使用多进程?
最佳答案
  • 五星知识达人网友:白昼之月
  • 2021-12-29 17:08

一般操作系统教科书里的线程和进程的概念只是抽象理论上的,在不同OS里的实现显然有很大区别。Windows上线程库很方便很高效,强于posix thread,而process的创建代价就很昂贵;而且这是由MS自己设计实现的,直接以系统API方式提供。Unix上process model更简单,而multithreading基本就是一个雷区,Unix上几十年来的主流开发语言C/C++根本就不支持thread(直到C++11),即使后来有了posix thread,在移植性上也是开发人员的噩梦。所以,抛开具体的DB产品不说,multitasking在Windows上一般首选thread,而Unix上肯定是用fork了。这也是为什么mysql基于solaris却采用thread会被认为是挑战。
全部回答
  • 1楼网友:往事隔山水
  • 2021-12-29 17:51
这下我知道了
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯