Android Logcat独立环形缓冲区日志连续显示的原因咨询
关于
adb logcat -d -b V:*连续输出多缓冲区日志的解释 首先明确你执行的命令adb logcat -d -b V:*的作用:
-d:导出当前设备上的日志后立即退出,不会持续监听-b V:*:指定输出所有可用的环形缓冲区的日志,包括你提到的main、system、crash、events、radio等独立缓冲区
你看到的连续输出现象,是logcat的默认输出逻辑导致的:
logcat会逐个遍历你指定的所有缓冲区,将每个缓冲区存储的日志内容按时间顺序完整输出,并且在每个缓冲区的日志开头添加--------- beginning of [缓冲区名称]的分隔标记,用来区分不同的独立缓冲区。
也就是说,你看到的连续日志流,实际是多个独立缓冲区的日志被logcat按顺序拼接输出,每个以分隔标记开头的区块,就是对应环形缓冲区的完整日志内容(如果缓冲区存满,会覆盖旧日志,所以显示的是缓冲区当前保留的所有日志)。
如果需要单独查看某一个环形缓冲区的日志,可以单独指定-b参数,比如:
- 查看main缓冲区:
adb logcat -d -b main - 查看events缓冲区:
adb logcat -d -b events
这样就能单独获取对应独立缓冲区的日志内容,而不是合并输出。
内容的提问来源于stack exchange,提问作者SimDDang
相关产品推荐
相关产品推荐

