Day17-JS进阶-线程机制和事件机制

1、进程与线程

 

   

 

 

程序运行起来之后,就会产生出对应的进程了

(并且并不是一个程序只能搞一个进程,一个程序是可以触发多个进程的)--这样的程序称之为多进程的程序/应用

并且一个进程还可以分为多个线程

如果这个程序对应的进程有多个线程的话,那么这个程序就是一个多线程的程序了

如果这个进程只有一个线程的话,那么这个程序就是单线程的程序

 

 进程之间的关系是相互独立的

线程池就是用包保存,然后复用线程的

 

 

 

 

 

 

 

 

 

 

 

 

2、浏览器内核

 

js引擎的话,其实在浏览器内部就有的了

内存里面其实是一个DOM对象树来的

 

 

 3、定时器引发的思考

 

 

 

 

也就是可能设置的是200 可能是 203 201 202之后才进行的

然后在好卖你再加一个 for遍历的话,时间可能就变成是500+的了,就是不准的,也就是不能按时来执行的了

 

 

 

alert语句会把程序暂停的,那alert之后,setimeout是立即执行,还是过一会才执行的呢?

但是它是要在alert之后,不会立即把111和222打印出来,还要等一定的时间才行的

也就是alert不仅把主线程暂停了,还把settimeout计时也暂停了

 

 假如代码变成这样的话

 

 

alert111之后,过一秒而不是过两秒之后,又会alert 2222 了

先执行初始化代码,再执行回调代码,计时把settimeout的时间设为0的话,也是alert先执行,因为alert在js引擎里面就是初始化代码,而settimeout不论有没有设置时间都是回调代码的了

 

 

 

4、事件循环模型

 

posted @ 2020-07-05 12:28  SCAU-gogocj  阅读(112)  评论(0编辑  收藏  举报