2013-06-17 2 views
1

Я стараюсь удачи с расширением Mozilla.Передача объектов работникам

Я хочу использовать приведенный ниже код для чтения строки за строкой из файла и сохранения содержимого в массиве. И я пытался использовать работников для выполнения этой задачи в фоновом режиме, в стороне от основного потока. Проблема, с которой я сталкиваюсь, заключается в том, что я не могу передать ни «Компоненты», ни поток ввода для рабочего в функции postMessage() без получения ошибки .

https://developer.mozilla.org/en-US/docs/Code_snippets/File_I_O#Line_by_line

Любые идеи о том, что и как передать работнику, чтобы заставить его работать? Или, если нет, то как сделать эту задачу асинхронно, если не используя работников?

ответ

1

Вы не можете ничего, кроме чистого JSON к работнику и как Components и любой из Components.classes не сериализации к JSON пройти.

Посмотрите на модуль JavaScript NetUtil.jsm, кажется, что можно использовать сетевые утилиты для локального чтения файлов. В конце концов, все еще есть сокет.

Кроме того, вы можете просто сделать код из своего фрагмента асинхронным с хорошим старым setInterval.

Смежные вопросы