我又一个线程,读数据的线程,线程执行到这句话就会阻塞
Log.e("info", "****************正 在 读 取****************");
size = mInputStream.read(buffer);
但是我想在activity退出的时候结束掉这个线程。
网上说不建议使用.stop来结束线程。我就用了interrupt,但是没有没有抛出中断的异常。
我又让哪个Thread 实现了InterruptibleChannel接口,也没有用啊。
这是actiity 的onDestroy的方法:
/**
* activity销毁的时候关闭串口
*/
@Override
protected void onDestroy() {
//mReadThread就是读数数据的线程
if (mReadThread != null) {
canRead = false;
mReadThread.interrupt();
}
//mInputStream就是读取数据的流
if (mInputStream!=null){
try {
mInputStream.close();
} catch (IOException e) {
e.printStackTrace();
}
}
handler.removeCallbacksAndMessages(null);
handler = null;
closeSerialPort();
super.onDestroy();
}