@korner-brazers

Мультизадачность или потоки: возможно такое в браузере?

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

Ранее я читал что-то там про потоки, якобы можно операцию в отдельный поток положить и браузер будет фурычить, на словах конечно красиво звучит а на практике кукишь))

Так вот хочу убедится реально ли такое сделать? кто-то делал потоки?) Хочу повесить нарезку изображения на отдельный поток и чтобы браузер продолжал нормально работать, но похоже это все еще не реально такое сделать.
  • Вопрос задан
  • 353 просмотра
Пригласить эксперта
Ответы на вопрос 2
alexey-m-ukolov
@alexey-m-ukolov Куратор тега JavaScript
Web Workers предоставляют простое средство для запуска скриптов в фоновом потоке. Поток Worker'а может выполнять задачи без вмешательства в пользовательский интерфейс. К тому же, они могут осуществлять ввод/вывод, используя XMLHttpRequest (хотя атрибуты responseXML и channel всегда будут равны null). Существующий Worker может отсылать сообщения в JavaScript код, который его создал, отправляя сообщения в обработчик событий, указанный этим кодом (и наоборот).

https://developer.mozilla.org/ru/docs/DOM/Using_we...
Ответ написан
@forspamonly2
разбейте задачу на небольшие части, например вырезание по одному куску, и запускайте их по очереди через setTimeout(0). браузер будет успевать отвечать и перерисовываться за это время.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
28 нояб. 2024, в 05:21
2000 руб./за проект
28 нояб. 2024, в 05:18
500 руб./за проект
28 нояб. 2024, в 03:51
3500 руб./за проект