Firefox扩展的线程行为可能吗?

时间:2009-03-04 07:31:12

标签: javascript multithreading firefox

Firefox扩展的线程行为是否可行?

我的意思是每个Firefox标签都有一个“线程”运行。

刚刚完成了一个扩展功能,可以在Firefox窗口中对页面执行某些操作,但是如果我想在每个选项卡中运行扩展逻辑,则需要进行一些重大的重组才能使扩展工作正常。

Methinks我必须以循环方式安排每个标签内容的处理,除了跟踪每个标签的上下文,以便一旦我暂停处理标签并转到另一个标签,前一个标签的上下文是当我再次回到它时,我得救了。

是的 - 我必须将我的扩展程序转换为进程调度程序!

我宁愿将该工作卸载到Firefox或操作系统。

虽然我可以为我处理的每个页面生成一个新窗口,这样扩展只能在一个页面上工作,我宁愿使用标签。

Altough我已经开始编写GM脚本编码,以便免费获得“线程”,我想知道是否有人有更好的想法?

为每个创建的选项卡从扩展中生成一个线程,以便每个线程都被本地化并专用于每个选项卡?

1 个答案:

答案 0 :(得分:2)

抱歉,我之前的回答是错误的(因为我很久以前就开发了扩展,对于Firefox 2)。现在看起来可以在扩展中使用Javascript线程:

但是从线程访问DOM或UI是不安全的。

此外,您并不需要线程能够访问多个选项卡。所有选项卡都等于Firefox扩展名。