1.请问 service ondestory了,内部线程还会继续执行吗? public class ImService extends Service { private volatile int i=0; @Nullable @Override public IBinder onBind(Intent intent) { return null; } @Override public void onCreate() { super.onCreate(); System.out.println("ImService onCreate执行了"); test(); } @Override public int onStartCommand(Intent intent, int flags, int startId) { return super.onStartCommand(intent, flags, startId); } @Override public void onDestroy() { super.onDestroy(); System.out.println("ImService onDestroy执行了"); } private void test(){ new Thread(new Runnable() { @Override public void run() { while (true){ i++; System.out.println("ImService 当前数据是"+i); try { Thread.currentThread().sleep(3000); } catch (InterruptedException e) { System.out.println("ImService 线程休眠异常 "); e.printStackTrace(); } } } }).start(); } }
经过测试验证,service 停止了,也就是执行 ondestroy了,内部线程依然会继续执行