Я использую rxjs / observable / timer of Angular, чтобы вызвать диалоговое окно на экране через 12 минут после начала сеанса (за 3 минуты до конца) и показать второй отсчет этих 3 минут до окончания сеанса.Это работает, но не работает, если в течение этих 12 или 12 + 3 = 15 минут браузер / вкладка неактивен.Неправильное время показывает, и пользователю показывают, что ему говорят, что осталось 1:30, чтобы выйти из системы через некоторое время после того, как прошло 15 минут, и они действительно вышли из системы.Я вижу, что это поведение по умолчанию с неактивными браузерами, а не специфическое для этого кода, поэтому я не публикую этот код здесь.Например, setInterval и setTimeout должны иметь одну и ту же проблему.например, этот пост здесь или более этот пост здесь .Я пытался использовать веб-работников, и это работало правильно, но в IE не появлялось вообще диалоговое окно, вероятно, потому что IE и Safari> 6.2 не поддерживают общих работников. Это - это то, что я пробовал.
Если таймеры неактивных вкладок / браузеров медленно бьются, это поведение по умолчанию, и решение переопределяет реализацию функций setTimeout и т. Д., И это решение не работаетВо всех браузерах является решением?Я видел, как таймеры в фиктивных тестах и т. Д. Работают правильно, даже если вкладка была неактивной.
Обратите внимание, что это не бездействие браузера, после которого время сеанса истекает, поэтому я не могу использовать перемещение мыши, нажатие клавиш и т. Д. Для мониторинга этого какобходной путь.Мне нужно измерить 12 минут с момента получения токена доступа.