Javascript 无响应调试
我有一个页面总是只在chrome和safari中卡住。页面加载很好,然后达到25%的CPU(4个内核,如果您愿意,可以达到100%)。它从不崩溃,但保持无响应。Safari实际上说有一个没有响应的脚本。我在所有启动代码上都添加了调试警报,代码运行正常。我有一条“等待www…”的信息,它不会消失。 我怎么知道现在正在运行什么?有没有办法“转储”当前javascript堆栈,即使该选项卡没有响应 我不能发送一个链接,因为该网站还没有为公众做好准备,所以如果你能提供一个通用的解决方案或任何方法来诊断这个问题,我将不胜感激 另一件奇怪的事情是,在本地运行时,无响应的页面加载得很好Javascript 无响应调试,javascript,google-chrome,Javascript,Google Chrome,我有一个页面总是只在chrome和safari中卡住。页面加载很好,然后达到25%的CPU(4个内核,如果您愿意,可以达到100%)。它从不崩溃,但保持无响应。Safari实际上说有一个没有响应的脚本。我在所有启动代码上都添加了调试警报,代码运行正常。我有一条“等待www…”的信息,它不会消失。 我怎么知道现在正在运行什么?有没有办法“转储”当前javascript堆栈,即使该选项卡没有响应 我不能发送一个链接,因为该网站还没有为公众做好准备,所以如果你能提供一个通用的解决方案或任何方法来诊断这
任何帮助都将不胜感激。您可以使用webkit profiler找出它从何处开始发出声音。打开开发者工具(mac上的command+alt+i,也可以通过chrome右上角的扳手图标访问),转到Profiles选项卡,然后单击左下角的黑色实心圆圈。执行导致减速的操作,然后再次单击实心黑色圆圈。实心黑色圆圈为“开始录制”/“结束录制”。然后可以看到哪些js函数占用的时间最多。您还可以获取堆快照,以便查看正在创建的所有js对象。非常有用
好的,你能给我们一页吗?或者我们应该盲目地找出答案?比较本地开发平台和实时服务器之间的访问日志。可能出现了某种无限循环。问题是,它只发生在启动时,在我所有的代码都运行完之后(据我所知)@sonia,然后放置一个调试器;在js应用程序正在引导的代码中,要暂停加载并启动调试器,必须先启动调试器,然后才能导航到有问题的页面,然后才能使用探查器,否则无法使用。