Эквивалент общего хранилища Ваканды в v10

Из-за проблем с совместимостью мой проект должен оставаться в Wakanda 10. Каков наилучший метод обеспечения согласованности переменной в нескольких потоках сервера? Например, если я хочу сделать литерал объекта, который можно изменить, как я могу лучше всего обеспечить обновление данных во всех потоках сервера Wakanda?

Сейчас я собираюсь записать значение в хранилище данных в качестве обходного пути. Любые лучшие предложения будут оценены. Поможет ли мне общий работник?


person Greg M    schedule 04.09.2016    source источник


Ответы (1)


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

Чтобы сделать объект доступным для всех воркеров, вы можете:

  1. Передать объект от воркера другому с помощью postMessage;
  2. Сохраните объект в базе данных.

Я считаю, что лучший способ - сохранить вашу переменную в хранилище данных. это проще, особенно если у вас много рабочих.

Вот некоторые связанные обсуждения:

person issam Eljohri    schedule 05.09.2016
comment
Можно ли предположить, основываясь на вашем ответе, что глобальная переменная на стороне сервера будет обновляться во всех потоках? Это не то, что я испытывал. Где бы вы объявили этот глобальный (бутстрап?) - person Greg M; 07.09.2016