zoukankan      html  css  js  c++  java
  • 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、事件循环模型

  • 相关阅读:
    大话设计模式——UML图
    IdentityServer3零星笔记
    Angular路由
    基于jquery的静态页面翻页
    00_python安装与配置(mac)
    OracleParameter.UdtTypeName的值必须是全大写!
    VS2012调用64位IIS Express
    MVC中使用Ueditor
    优秀博客站点
    jqGrid中的formatter
  • 原文地址:https://www.cnblogs.com/SCAU-gogocj/p/13245373.html
Copyright © 2011-2022 走看看