我正在用Java开发Android应用。我使用了很多库:firebase crashanalitc,SQLCipher,ButterKnife等。问题是:当我从Android Studio运行应用程序时,即使关闭所有活动,我仍注意到该应用程序仍保持活动状态。我知道有一些线程在后台工作。.但是我不知道如何检查哪个线程处于活动状态,更重要的是,它是做什么的。有任何想法吗?
您可以使用getState()方法获得线程处于什么状态,该方法返回Thread.States的Enum。在给定的时间点,线程只能处于以下状态之一。
NEW一个尚未开始执行的Fresh线程。RUNNABLE在Java虚拟机中执行的线程。BLOCKED阻塞,等待监视器锁定的线程。等待中的一个线程正等待另一个线程通知。TIMED_WAITING一个线程正等待由另一个线程通知特定时间。终止线程谁的运行方法已结束。
Thread t = new Thread();
Thread.State e = t.getState();
Thread.State[] ts = e.values();
for(int i = 0; i < ts.length; i++){
System.out.println(ts[i]);
}