码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Android watchdog


    看门狗是一种在软件中用于检测和处理挂起及死锁的定时器实现。Android 内置的看门狗机制
    可监视一组重要的系统服务:活动管理器服务、窗口管理器服务和电源管理器服务。
    这些系统服务往往会在相关内核或原生代码出现问题时发生挂起或死锁。这类问题可能包括
    硬件故障、内核驱动程序或原生代码挂起、线程在 IPC 调用时被阻止等。

    如果任何受监视的系统服务出现卡断情况,Android 看门狗定时器会超时,随后看门狗会将其
    终止。但是,这往往会导致多米诺效应,因为它会终止上级系统服务器进程,进而终止 zygote
    进程,最终导致 Android 框架与设备重启。
    默认情况下,一旦系统进程超过一分钟未做出响应,看门狗便会将其终止。看门狗超时往往
    在“应用程序未响应”(ANR) 情况之后发生。

    检查机制

    Android 看门狗最初由系统服务器启动。看门狗初始化后,会创建大量处理程序检查器,负责
    监视各项系统服务。
    看门狗一旦启动,便会无限期地每隔 30 秒执行一次检查。在每次检查间隙,看门狗会使用处
    理程序检查器执行如下检查:
    ■ 尝试获取并等待系统服务监视锁,可能的状态有以下几种:
    □ 完成 – 超时前成功获取锁
    □ 等待 – 仍继续等待锁且尚未超时(不到一分钟)
    □ 过期 – 已超时(超过一分钟)
    ■ 检查连接至每一个主线程的消息 looper,确认队列中待处理的消息是否已超时(一分
    钟)。
    如果任何处理程序检查器报告过期状态或消息超时,则将输出相关消息并终止挂起的服务。

    要在调试时禁用自动重新启动特性,请删除如下文件:

    /frame

  • 相关阅读:
    【职场成长】一篇文章,讲清复盘!
    windows下配置maven
    oracle中的decode用法
    空洞卷积学习笔记
    Tensorflow2 中模型训练标签顺序和预测结果标签顺序不一致问题解决办法
    java毕业设计幼儿园管理系统Mybatis+系统+数据库+调试部署
    使用Docker安装和部署Elasticsearch出现问题以及解决方案
    如何恢复U盘里面的已经损坏的数据?
    笔试强训48天——day12
    7年阿里测试经验之谈 —— 用UI自动化测试实现元素定位
  • 原文地址:https://blog.csdn.net/weixin_47456647/article/details/125496939
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号