Я пытаюсь понять разницу между skipWaiting
и clientsClaim
.В моем понимании: вызов skipWaiting
заставит нового работника сервиса пропустить фазу ожидания и сразу же стать активным.clientsClaim
может затем «потребовать» любые другие открытые вкладки.
То, что я собираю из документации в Интернете:
В каждомсообщение, которое я нахожу в Интернете, обычно я всегда вижу, как clientsClaim
и skipWaiting
используются вместе.
Однако недавно я нашел работника службы, который использует только clientsClaim
, и мне трудно обернуть мойобдумайте, в чем на самом деле разница между clientsClaim
и skipWaiting
, и в каком сценарии вы используете clientsClaim
, но не skipWaiting
?
Мои мысли об этом иэто может быть, где я ошибаюсь, но это мое понимание этого: этот вызов clientsClaim
, а не skipWaiting
является избыточным?Учитывая:
- Новый работник сервиса станет активным, когда все открытые страницы закрыты (потому что мы не используем
skipWaiting
) - Когда наш новый работник сервиса активирован, мыпозвоните по номеру
clientsClaim
, хотя мы просто закрыли все открытые страницы, чтобы даже активировать нового работника сервиса.Не должно быть других страниц для контроля, потому что мы просто закрыли их.
Может ли кто-нибудь помочь мне понять?
Прочитать документацию по skipWaiting
Прочитайте документацию по clientClaim
Прочитайте о жизненном цикле сервисного работника Джейка Арчибальда и поиграйте с этой демонстрацией
Прочитайте кучу сообщений stackoverflow, автономной кулинарной книги, различных сообщений в блоге и т. Д.