Skip to content

不是很可靠 #1

Open
Open

Description

@Gru110110110

Step4. 如果UI线程没有发生阻塞,则sleep过后,tickCounter一定与原来的值不相等,否则一定是UI线程发生阻塞;
假设先执行tickCounter累加后(一行累加代码,时间可忽略不计),马上转到某个耗时子线程,导致UI线程阻塞,sleep过后 tickCounter值还是相等的,但是已经明显发生卡顿。也就是很大概率发生多次临近阈值5s的卡顿 或者超过,这个时候并不能明显显示出来。

Activity

  1. D-clock commented on Jun 13, 2017

    @D-clock
    Owner

    @pruas 确实有这样的问题,感谢指出,得优化一下。

  2. Gru110110110 commented on Jun 21, 2017

    @Gru110110110
    Author

    我也写了个监测,使用传统两种方式。https://github.com/pruas/Caton 可以交流交流~

  3. LQG24 commented on Jul 30, 2017

    @LQG24

    Step4. 如果UI线程没有发生阻塞,则sleep过后,tickCounter一定与原来的值不相等,否则一定是UI线程发生阻塞;
    假设先执行tickCounter累加后(一行累加代码,时间可忽略不计),马上转到某个耗时子线程,导致UI线程阻塞,sleep过后 tickCounter值还是相等的,但是已经明显发生卡顿。也就是很大概率发生多次临近阈值5s的卡顿 或者超过,这个时候并不能明显显示出来。

    1楼说的,假设先执行tickCounter累加后(一行累加代码,时间可忽略不计),马上转到某个耗时子线程,导致UI线程阻塞。会发生这样的情况吗?不是转到子线程了吗,怎么还会导致UI线程阻塞呢。
    不过确实会临近阈值5s的卡顿 或者超过

  4. HCLXIDIAN commented on Feb 21, 2019

    @HCLXIDIAN

    Step4. 如果UI线程没有发生阻塞,则sleep过后,tickCounter一定与原来的值不相等,否则一定是UI线程发生阻塞;
    假设先执行tickCounter累加后(一行累加代码,时间可忽略不计),马上转到某个耗时子线程,导致UI线程阻塞,sleep过后 tickCounter值还是相等的,但是已经明显发生卡顿。也就是很大概率发生多次临近阈值5s的卡顿 或者超过,这个时候并不能明显显示出来。

    sleep后tickCounter都加一了为什么还是相等的呢??

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions