首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >反应-本机支持多线程和后台线程或并行执行?我们怎么能做到呢?

反应-本机支持多线程和后台线程或并行执行?我们怎么能做到呢?
EN

Stack Overflow用户
提问于 2020-01-09 12:31:19
回答 2查看 4K关注 0票数 17

我已经阅读了react的正式文档--原生的以及其他一些媒体源和博客,我了解到react中有UI线程JavaScript ThreadJavascript线程是执行javascript代码、进行API调用、处理触摸事件和许多其他事件的线程。UI线程更新UI. --如果JavaScript线程正在处理该进程,如果我们再次执行按钮操作或任何其他触摸事件,则需要一些时间来响应,在完成一个进程之后,只更新UI,直到我觉得它滞后了,或者它被困在某个地方。

,例如

有一个底部选项卡导航器,它有四个选项卡,第一个选项卡和map视图中有一个列表视图,它显示了第二个选项卡中多个点之间的路由。

我在第一个选项卡中执行了一些按钮操作(在列表视图中单击了类似按钮),并立即导航到第二个选项卡,感觉在更新UI时有些滞后,或者从第一个选项卡导航到第二个选项卡需要一些时间(1-3秒)。

在第二个选项卡中,映射需要时间(5-10秒)来获取多个点之间的路由,当这个过程正在进行时,如果我导航到任何其他选项卡,选项卡之间的导航就不平滑,并且存在大量UI延迟。

如何使react原生应用程序能够更快地响应可触摸的操作,并减少UI滞后

是否有任何Multithreading后台线程的概念,我们可以在主线程中运行特定的逻辑,并更新UI以使响应本机应用程序响应更快而不出现任何滞后。

EN

回答 2

Stack Overflow用户

发布于 2020-02-26 09:43:12

不可能在react本机中使用线程,但您可以使用第三方包(如反应本机bg螺纹 )进行性能优化。

票数 1
EN

Stack Overflow用户

发布于 2021-08-08 13:05:09

React本机使用javascript是一种单线程语言,因此理论上不应该有一种使用多线程的方法。如果有什么东西阻塞了js线程,那么应该将代码移到本机端,在objective/swfit和java/kotlin中实现它,这样您就能够在本地线程上运行该代码,并防止js线程的锁定。无论如何,在Reanimated 2发布后,worklet使其能够创建这个图书馆,这允许创建其他js线程来运行代码,而不是阻塞主线程。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59664035

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档