Javascript react本机应用暂时冻结,性能调试器中没有活动

Javascript react本机应用暂时冻结,性能调试器中没有活动,javascript,android,performance,react-native,freeze,Javascript,Android,Performance,React Native,Freeze,这很难调试,因为发生此冻结时,chrome性能调试器中没有任何活动。ScrollView仍然会滚动,所以落后的不是Android。另一方面,性能监视器仍然显示JS为60fps,并且不会冻结 也许这是因为异步代码没有返回,尽管同步代码应该继续运行。当我提交更改时,其他操作(如向后导航)也会被阻止,尽管整个流程也是异步的 如果我试图在滞后时触摸某些东西(如更改选择),应用程序可能会崩溃,并出现以下错误: 无法记录没有触摸开始的触摸结束。 04-16 17:18:17.749 7065 7102

这很难调试,因为发生此冻结时,chrome性能调试器中没有任何活动。ScrollView仍然会滚动,所以落后的不是Android。另一方面,性能监视器仍然显示JS为60fps,并且不会冻结

也许这是因为异步代码没有返回,尽管同步代码应该继续运行。当我提交更改时,其他操作(如向后导航)也会被阻止,尽管整个流程也是异步的

如果我试图在滞后时触摸某些东西(如更改选择),应用程序可能会崩溃,并出现以下错误:

无法记录没有触摸开始的触摸结束。

04-16 17:18:17.749  7065  7102 I ReactNativeJS: websocket connection open
04-16 17:18:18.538  7065  7102 E ReactNativeJS: 'Cannot record touch end without a touch start.\nTouch End: %s\n', 'Touch Bank: %s', '{"identifier":2,"pageX":144.79888916015625,"pageY":327.2443542480469,"timestamp":22079251}', '[{"touchActive":false,"startPageX":321.55340576171875,"startPageY":325.2271728515625,"startTimeStamp":22079180,"currentPageX":322.0527038574219,"currentPageY":346.2295227050781,"currentTimeStamp":22079251,"previousPageX":322.0527038574219,"previousPageY":322.2295227050781,"previousTimeStamp":22079248},{"touchActive":false,"startPageX":235.17337036132812,"startPageY":257.2802429199219,"startTimeStamp":22079203,"currentPageX":234.674072265625,"currentPageY":281.2802429199219,"currentTimeStamp":22079251,"previousPageX":234.674072265625,"previousPageY":257.2802429199219,"previousTimeStamp":22079248}]'
04-16 17:18:18.565  7065  7102 E ReactNativeJS: 'Cannot record touch end without a touch start.\nTouch End: %s\n', 'Touch Bank: %s', '{"identifier":2,"pageX":144.79888916015625,"pageY":327.2443542480469,"timestamp":22079251}', '[{"touchActive":false,"startPageX":321.55340576171875,"startPageY":325.2271728515625,"startTimeStamp":22079180,"currentPageX":322.0527038574219,"currentPageY":346.2295227050781,"currentTimeStamp":22079251,"previousPageX":322.0527038574219,"previousPageY":346.2295227050781,"previousTimeStamp":22079251},{"touchActive":false,"startPageX":235.17337036132812,"startPageY":257.2802429199219,"startTimeStamp":22079203,"currentPageX":234.674072265625,"currentPageY":281.2802429199219,"currentTimeStamp":22079251,"previousPageX":234.674072265625,"previousPageY":281.2802429199219,"previousTimeStamp":22079251}]'
04-16 17:18:18.572  7065  7102 E ReactNativeJS: 'Cannot record touch end without a touch start.\nTouch End: %s\n', 'Touch Bank: %s', '{"identifier":2,"pageX":144.79888916015625,"pageY":327.2443542480469,"timestamp":22079251}', '[{"touchActive":false,"startPageX":321.55340576171875,"startPageY":325.2271728515625,"startTimeStamp":22079180,"currentPageX":322.0527038574219,"currentPageY":346.2295227050781,"currentTimeStamp":22079251,"previousPageX":322.0527038574219,"previousPageY":346.2295227050781,"previousTimeStamp":22079251},{"touchActive":false,"startPageX":235.17337036132812,"startPageY":257.2802429199219,"startTimeStamp":22079203,"currentPageX":234.674072265625,"currentPageY":281.2802429199219,"currentTimeStamp":22079251,"previousPageX":234.674072265625,"previousPageY":281.2802429199219,"previousTimeStamp":22079251}]'
04-16 17:18:18.614  7065  7102 I ReactNativeJS: 'ws onclose', ''
所以我的部分问题是;除了Chrome调试器和性能监视器之外,我如何调试性能

另一部分是,;为什么异步代码可以阻止应用程序,我如何防止这种情况

任何其他可能有帮助的意见也将不胜感激

顺便说一句,我花时间优化了所有以前慢的东西,所以当它不落后的时候,一切都很快