在JavaScript中,一个线程执行的时候不依靠其他线程处理完毕我们称为异步,相反一个线程必须等待直到另一个线程处理完毕我们则称为同步。
打个比方:
(1)同步就是你在煮方便面的时候必须等水开了,你才会放调料和方便面;
(2)异步就是你在煮方便面的时候不需要等水开了,你可以刚开始开火的时候,就放调料和方便面;
在JS中同步异步与阻塞非阻塞其实没有本质的区别,我们往往指的是一回事,因为JS是单线程的。
但是js执行环境是多线程的,想要达到阻塞效果,可以通过同步或者alert()
在做后台系统中,后台系统的菜单是根据登陆者的权限不同来分配使用的菜单界面,这个时候就需要用同步的阻塞特性来先生成这个这个菜单界面,而且这个同步js需要写在body之前。
相关文章
- EF调用存储过程查询表中的部分字段,报数据读取器与指定的“AdventureWorksDWModel.Student”不兼容。某个类型为“Age”的成员在同名的数据读取器中没有对应的列。
- python 之 并发编程(进程池与线程池、同步异步阻塞非阻塞、线程queue)
- 在 UniApp 中实现 App 与 H5 页面的跳转及通信
- 探索 AI 在文化遗产保护中的新使命:数字化修复与传承
- 超硬核五千字!彻底讲明白JavaScript中的异步和同步,以及JavaScript代码执行顺序
- 二进制数在计算机中存储与计算(原码补码反码详解)
- CANFD技术在新能源汽车通信网络中的应用与可靠性分析-二、新能源汽车通信网络需求分析
- 同步通信与异步通信有什么区别?
- Java中同步和异步的区别是什么?优点缺点以及概念理解
- 深入解析:异步与同步,单工与双工在嵌入式通信协议中的应用