第102天 进程与线程有什么区别?JS的单线程带来哪些好处?
一个程序必定包含>=1个进程,
一个进程必定包含>=1个线程,
进程之间不共享内存,每多一个进程就要多分配一定的内存。
多个线程共享内存,因此多线程可以提高程序的并发性。
JS单线程带来的好处:
JS主要是面向浏览器的,因此是和用户实时交互的,如果多线程执行的话,你无法确定同时开始的任务哪个会先结束,以网页加载为例,可能导致网页HTML结构已经加载好,但是CSS样式还未加载完成,导致用户浏览体验差。或者两个线程同时对一个DOM结点进行修改和删除操作,则无法判断以哪个线程为准。
Most helpful comment
一个程序必定包含>=1个进程,
一个进程必定包含>=1个线程,
进程之间不共享内存,每多一个进程就要多分配一定的内存。
多个线程共享内存,因此多线程可以提高程序的并发性。
JS单线程带来的好处:
JS主要是面向浏览器的,因此是和用户实时交互的,如果多线程执行的话,你无法确定同时开始的任务哪个会先结束,以网页加载为例,可能导致网页HTML结构已经加载好,但是CSS样式还未加载完成,导致用户浏览体验差。或者两个线程同时对一个DOM结点进行修改和删除操作,则无法判断以哪个线程为准。