• js执行机制


    js是单线程语言,即某个时间内只能干一件事。那为什么不能是多件事呢?

    首先,多线程的含义是什么呢?同时做多件事节约时间,但是在js中,假如同时间添加和增加dom,那么就会冲突。

    单线程意味着所有任务都需要排队,后边任务必须等待前边任务完成才能执行,假如前边有个任务需要耗时很长,那么后边有些看似可能不需要等待的任务就会一直等待 (听到就很神烦是不是?)。从用户角度上来看是不可以接受的,所以JS出现了异步的概念。

    同步和异步

    • 同步任务:在主线程上排队执行的任务,只有前一个任务执行完毕,后一个任务才能执行。
    • 异步任务:进入任务队列的任务,只有同步任务执行完毕,才会通知任务队列进入主线程执行。(终于等到我了!排了这么久的队!开心到哭······)

    运行机制

    • 所有同步任务都在主线程上执行,形成一个执行栈。
    • 主线程之外,还存在任务
  • 相关阅读:
    今天晚上有个什么样的博文呢
    STM8CubeMx来了
    开博啦
    Authentication
    文件上传设计要点
    分布式杂记
    SQL Server 知识集
    C# 集合使用误区
    网络知识集
    关于 elasticsearch 近实时特征的思考
  • 原文地址:https://www.cnblogs.com/alaner/p/16351861.html
Copyright © 2020-2023  润新知