Ios 是否可以在不同的线程中执行两个react本机上下文?

Ios 是否可以在不同的线程中执行两个react本机上下文?,ios,react-native,Ios,React Native,我有一个用swift编写的本地应用程序,在某些部分使用react native 我有一个first react本机视图,它在滚动视图中显示项目,当我在这个滚动视图中滚动时,一些元素变得可见并被渲染 我有另一个react native视图,大约每500毫秒执行一次事件循环,我需要它足够精确 import Editor from './src/components/Editor'; import Playback from './src/components/Playback'; AppRegis

我有一个用swift编写的本地应用程序,在某些部分使用react native

我有一个first react本机视图,它在滚动视图中显示项目,当我在这个滚动视图中滚动时,一些元素变得可见并被渲染

我有另一个react native视图,大约每500毫秒执行一次事件循环,我需要它足够精确

import Editor from './src/components/Editor';
import Playback from './src/components/Playback';

AppRegistry.registerComponent('Editor', () => Editor);
AppRegistry.registerComponent('Playback', () => Playback);
问题是当我在第一个视图上滚动时,元素的渲染使得第二个视图的处理速度太慢

所以我想知道第二个视图的javascript代码是否可以在另一个线程中执行,这样它就不会受到第一个视图的影响


这可能吗?

我实际上在本机端使用了
Timer.scheduledTimer
,在将其添加到运行循环时,我必须更改模式,以便它即使在处理滚动视图时也能运行。所以我的问题实际上与react native
setTimeout
无关,对不起

您必须实例化一个新的
bridge
对象来创建一个新的JavaScript上下文(位于专用线程中)。然后,您可以使用这些不同的桥接对象来实例化
RootView
s.

webworkers也许?@AlekseiMaide它是iOS上的react原生对象,我认为webworkers不可用…:/我想上面说他们是。。。还发现:也许你可以利用它…@AlekseiMaide第一个链接是关于web应用程序的,我的应用程序不是在safari中执行的,它被“编译”成一个本机应用程序,因此不能使用safari API。第二个链接很有趣!我会调查的!我想可能是当我查看的源代码时,感谢您的确认!伟大的我还必须提到,实例化另一个网桥是相对昂贵和占用内存的操作。你必须有充分的理由去做。