Search
Write a publication
Pull to refresh

Comments 14

Отличная статья, хочется увидеть более реальные примеры, а то так на ум ничего не приходит…

Заблокировать исполнение основного потока через Atomics.wait, чтобы подождать выполнения асинхронной функции и тем самым превратить её в синхронную, потому что wasm про асинхронный яваскрипт ничего не знает и для вызова асинхронных функций из wasm нужны вот такие замечательные костыли :)

Так в главном же потоке как раз работа Atomics.wait и не гарантирована...

На этот случай есть ещё более замечательные костыли из перехвата serviceworkerом синхронного xmlhttprequest

Интересно смотреть как рожденного ползать пытаются заставить летать.

Личный опыт показал, что если задача требует многопоточности сразу переходить с javascript и не мучать себя. Вариантов много.

У меня остался вопрос, а с планировщиком что-то порешали? На сколько я помню, главный поток из-за планировщика являлся узким местом.

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

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

Только у меня упоминание "Cross-Origin-Opener-Policy" в этой статье вызывает вопросы? Кто-то не почистил ответ чатжпт?

Ну вот в доках конкретно написано на что заголовок влияет. А тут в статье не понятно. Может я поиграться хочу, нужно мне думать про embedding и защищаться?

Но в статье же и написано:

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

Или этого текста раньше не было?

В перспективе может где-то и пригодиться. Спасибо за статью!

Можно применить для реализации загрузки всяких метрик и тп? А то всякие pagespeed ругаются на это)

Загрузку всяких метрик можно сделать просто асинхронной, нет смысла выносить ещё и в воркер. Тем более что из воркера "всякие метрики" работать не смогут.

Подскажите, а атомики работают на телефонах в веб wasm среде? У меня на iOS атомарные операции просто отказались работать и похоже это ограничение безопасности(

Sign up to leave a comment.