Android检测当前是否在主线程内

来源:互联网 发布:网络作家协会好加入吗 编辑:程序博客网 时间:2024/06/06 09:37

为了避免不是在当前主线程造成的异常的两种靠谱的方式:
第一种:

    /**     * 判断是否在当前主线程     * @return     */    public static boolean isOnMainThread(){        return Thread.currentThread() == Looper.getMainLooper().getThread();    }

第二种:

    /**     * 判断是否在当前主线程     * @return     */    public static boolean isOnMainThread(){        return Looper.myLooper() == Looper.getMainLooper();    }

使用的地方如可能在使用Gilde时出现的bug:java.lang.IllegalArgumentException: You cannot start a load for a destroyed activity
其解决办法之一就是在加载的时候判断是否是在该主线程内。如不在则不执行加载,可避免很多不必要的,出现概率低的异常。关于这个异常参考资料链接:这里写链接内容

1 0
原创粉丝点击