Джерело:
Хабрахабр / Захабренные / Тематические / Посты
Дата публікації:
07/06/2026 10:30
Постійна адреса новини:
http://www.vsinovyny.com/12977233
07/06/2026 10:30 // Хабрахабр / Захабренные / Тематические / Посты

Предположим, вы пишете интерпретатор машины Тьюринга, запущенный в Web Worker’е. UI должен показывать трейс — как машина шагает от состояния к состоянию, что пишется на ленту, как двигается каретка. Чтобы пользователь успевал считывать изменения в UI, между итерациями движка нужна короткая задержка — миллисекунды, регулярно, на каждом шаге. Это приостановка движка между итерациями — регулярная и предсказуемая, не «пауза» в смысле UI-кнопки «Пауза» (та останавливает машину до клика «Продолжить»).
Возникает вопрос: где именно в цикле итерации воркеру нужно реализовать приостановку? Кандидатов два, и выбор между ними фиксирует сразу два контракта: хуков движка и протокола между воркером и основным потоком. Выбрать точку — это спроектировать обе стороны сразу; промахнуться — испортить обе. Эта статья — про этот выбор.
Где живёт пауза| « |
Наступна новина з архіву Дания VS Украина: превью матча сборных |
Попередня новина з архіву Росія атакувала сховище ядерного палива: що відомо про удар по критичному об’єкту |
» | |
|
|
||||