小程序
小游戏
企业微信
微信支付
扫描小程序码分享
网页开发渲染线程和脚本线程是互斥的,这也是为什么长时间的脚本运行可能会导致页面失去响应,而在小程序中,二者是分开的,分别运行在不同的线程中。
2 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
咱们可以把网页和小程序想象成两个不同的小工厂,渲染线程和脚本线程就是工厂里干活的工人,下面给你讲讲它们在网页和小程序这两个 “工厂” 里的工作模式区别。
在网页这个 “小工厂” 里,有两个关键的工人,一个专门负责把产品(也就是网页)打扮得漂漂亮亮,布置好各种细节,这个工人就是渲染线程;另一个工人负责处理一些杂七杂八但很重要的事情,比如和外界沟通、接收订单指令等,这个工人就是脚本线程。
但是呢,这个 “小工厂” 有个规定,同一时间只能有一个工人干活。也就是说,当负责杂事的脚本线程在处理大量复杂的订单指令,忙得不可开交,花了很长时间都没做完的时候,负责打扮产品的渲染线程就只能干等着。这就导致产品没办法及时变漂亮展示给客户,客户就会觉得这个 “工厂” 的产品好像卡住不动了,没什么反应,也就是页面失去响应啦。
比如说,脚本线程接了个特别难的订单,要做大量的数学计算来确定产品的规格,算起来没完没了,那渲染线程就只能闲着,页面就没办法更新,按钮点了没反应,画面也不滚动,就好像卡住了一样。
而在小程序这个 “小工厂” 里,规则就不一样了。这里给两个工人分别安排了不同的工作区域,让他们可以同时干活,互不干扰。渲染线程在自己的区域里专心把产品打扮得美美的,脚本线程在另一个区域处理各种杂事。
就算脚本线程遇到了特别难搞的订单,要花很长时间去处理,也不会影响渲染线程继续工作。渲染线程还是能按照自己的节奏把产品装饰好,及时展示给客户。所以客户在小程序里就不会遇到页面卡住没反应的情况,能更流畅地和产品互动,感觉体验就好多啦。
总的来说,网页开发里两个线程得轮流工作,容易因为一个线程工作时间长导致页面出问题;而小程序里两个线程能同时工作,避免了这种问题,让页面使用起来更顺畅。
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
没有写过网页吗?在网页中,js线程阻塞会导致界面卡住主界面的渲染。
小程序的话,js线程和渲染线程是分开的。js阻塞不会导致渲染界面卡住。
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
咱们可以把网页和小程序想象成两个不同的小工厂,渲染线程和脚本线程就是工厂里干活的工人,下面给你讲讲它们在网页和小程序这两个 “工厂” 里的工作模式区别。
网页开发:两个工人轮流干活
在网页这个 “小工厂” 里,有两个关键的工人,一个专门负责把产品(也就是网页)打扮得漂漂亮亮,布置好各种细节,这个工人就是渲染线程;另一个工人负责处理一些杂七杂八但很重要的事情,比如和外界沟通、接收订单指令等,这个工人就是脚本线程。
但是呢,这个 “小工厂” 有个规定,同一时间只能有一个工人干活。也就是说,当负责杂事的脚本线程在处理大量复杂的订单指令,忙得不可开交,花了很长时间都没做完的时候,负责打扮产品的渲染线程就只能干等着。这就导致产品没办法及时变漂亮展示给客户,客户就会觉得这个 “工厂” 的产品好像卡住不动了,没什么反应,也就是页面失去响应啦。
比如说,脚本线程接了个特别难的订单,要做大量的数学计算来确定产品的规格,算起来没完没了,那渲染线程就只能闲着,页面就没办法更新,按钮点了没反应,画面也不滚动,就好像卡住了一样。
小程序:两个工人各干各的活
而在小程序这个 “小工厂” 里,规则就不一样了。这里给两个工人分别安排了不同的工作区域,让他们可以同时干活,互不干扰。渲染线程在自己的区域里专心把产品打扮得美美的,脚本线程在另一个区域处理各种杂事。
就算脚本线程遇到了特别难搞的订单,要花很长时间去处理,也不会影响渲染线程继续工作。渲染线程还是能按照自己的节奏把产品装饰好,及时展示给客户。所以客户在小程序里就不会遇到页面卡住没反应的情况,能更流畅地和产品互动,感觉体验就好多啦。
总的来说,网页开发里两个线程得轮流工作,容易因为一个线程工作时间长导致页面出问题;而小程序里两个线程能同时工作,避免了这种问题,让页面使用起来更顺畅。
没有写过网页吗?在网页中,js线程阻塞会导致界面卡住主界面的渲染。
小程序的话,js线程和渲染线程是分开的。js阻塞不会导致渲染界面卡住。