chrome扩展背景+内容脚本导致笔记本电脑过热

时间:2017-07-07 09:08:33

标签: javascript google-chrome google-chrome-extension content-script

我有一个Chrome扩展程序,导致用户的笔记本电脑慢慢爬行并且真正使用大量CPU(或者至少会让他们的粉丝疯狂)。

我想知道如何分析这个,或者看看发生了什么。

一些有助于指导的理论:

  1. 扩展需要(不幸的是)进行一些轮询。我不会讨论为什么会这样,但请相信我的确如此。
  2. 然而,最终看起来是:

    setTimeout(function() {
    
        // our inner scrolling loop
        scrollingTimerId = setInterval(function() {
    
            // did the user change the URL?
            if (!isModalUrl(window.location.href)) { 
                clearInterval(scrollingTimerId);
            }
    
            // scroll!
            doScroll();
    
        }, SCROLL_DELAY);
    
        // our loop to check if we're done
        isDoneTimerId = setInterval(function() {
            ...
    
        }, OTHER_DELAY);
    
    }, TIMEOUT_DELAY);
    

    也许有一些失败要取消setInterval或导致使用量随时间增加的事情?

    1. 扩展程序还会向某些事件的所有标签发送消息。这可能是多个Chrome窗口打开的问题吗?
    2. 尝试寻找可能出现的性能问题,以及在哪里寻找。也许在Chrome开发工具检查器中有一个我不了解的好工具?

0 个答案:

没有答案