Как я могу эффективно использовать веб-работника для сложных вычислений при быстром генерировании данных из веб-сокета? - PullRequest
0 голосов
/ 16 мая 2019

Я работаю над Angular-приложением , которое каждую секунду получает обновления в реальном времени через websockets .Каждый раз, когда я получаю данные, я выполняю тяжелые вычисления на них.Чтобы улучшить его производительность, я перенес тяжелый расчет на веб-работник .

Я отправляю данные веб-работнику в формате JSON, например: const message = { type: 'orderBook', data: { trade, orderBookData: this.orderBookData, name: coin_name, basePrecision, userOpenOrders: this.getOpenOrders(), userIsLoggedIn: this.isUserLoggedIn(), dataPrecision: this.dataPrecision, } }; this.databaseServiceWorker.postMessage(message);

Они успешно отправляются в рабочий поток, и результат также поступает от веб-работника, но в течение нескольких секунд браузер получаетзастрял.

Почему пользовательский интерфейс застревает при обработке задачи на веб-сервере?

...