何为多进程与多线程?
多进程运行:一应用程序可以同时启动多个实例运行
多线程:在一个进程内,同时有多个线程运行
比较单线程与多线程?
单线程
优点:顺序编程,简单易懂
缺点:效率低
多线程
优点: 能有效提升CPU的利用 率
缺点: 创建多线程开销,线程间切换开销,死锁与状态同步问题
JS是单线程还是多线程?
js是单线程运行的
但是使用H5的web workers可以多线程运行(比如原本注册账号规则去服务器检查,但是明明在本地就可以检查,去服务器检查会造成用户等待时间过长,还造成服务器压力,所以在浏览器端直接设计一种语言就检查了?—>js在这样的背景下产生了,是一种脚本语言。但是如果是单线程,在浏览器点了一个按钮,需要进行10s的计算,如果是单线程,我就在这10s不可以干其他的事情了,所以有多线程的需求,h5就有web workers:注意h5不光包含标签,还包含css样式和一些js新语法)
为什么js要用单线程模式,而不用多线程模式?
JavaScript的单线程,与它的用途有关。
作为浏览器脚本语言,JavaScript的主要用途是与用户互动,以及操作DOM。
这决定了它只能是单线程,否则会帶来很复杂的同步问题(比如线程1准备更新p标签对象,线程2决定去删除,线程1运行的时候tmd被线程2删了,线程1懵逼了,就报错)
浏览器运行是单线程还是多线程?
多线程运行
浏览器运行是单进程还是多进程?
有单进程(老版本ie和火狐)也有多进程(谷歌,新版ie,可以用任务管理器查看)