Изучаем HTML 5-Б. Лоусон, Р. Шарп - 2011

Печать

Аналогично, код внутри объекта фонового вычисления также должен полагаться на сочетание postMessage/onmessage. Однако доступ к объекту ограничен намного сильнее, чем к обычному документу:только несколько избранных API и функций могут обращаться к содержимому фонового вычисления.

Единственный метод, доступный через объект фонового вычисления, — это terminate, КОТОрыЙ делает В ТОЧНОСТИ ТО, о чем говорит его название:останавливает фоновое вычисление. Вычисление прекращается, и соответствующий объект становится бесполезным. Кстати, возобновить вычисление невозможно, можно только создать новое.

Что можно делать внутри фонового вычисления

Внутри фонового вычисления у вас нет доступа к таким излишествам, как DOM. В действительности, для того чтобы выполнить какую-то задачу в DOM, нужно сначала подготовить данные в фоновом вычислении, а затем передать родительскому документу, чтобы он выполнил всю работу с DOM.

ПРИМЕЧАНИЕ

В настоящее время реализаций фоновых вычислений, которые бы поддерживали доступ к базам данных SQL для веб, не существует, однако работа в этом направлении идет.

Однако внутри фонового вычисления (согласно спецификации)

можно выполнять определенные манипуляции:

? передавать сообщения с помощью роs tMes sage и слушать входящие сообщения, используя onmessage;

? закрывать текущее фоновое вычисление с помощью close;

? устанавливать приемники событий;

? устанавливать объект xMLHttpRequest для запросов Ajax;

? использовать таймеры, такие как setTimeout, set Interval, и соответствующие методы сброса таймеров;

? применять все ключевые функции JavaScript: evai, isNaN, escape И Т. Д.;

? работать с объектами местоположения (href сценария фонового вычисления);

? использовать веб-сокеты (о которых мы поговорим в последнем разделе этой главы);

? работать с базами данных SQL для веб;