我有一个在onStart()方法中创建线程的活动。Thread用于通过TCP读取网络数据,并且在while循环中有一个阻塞的网络读取方法,该方法在每个增量上检查一个布尔变量。我的问题是,当使用back键销毁活动时,我将布尔循环控制变量的值设置为false,但线程不会结束,因为它停留在阻塞的网络方法上。thread = new Thread(this);
thread
在下面的代码中,我制作了一个简单的套接字程序,并使用than循环使它能够接受clientSocket不止一次。这些代码在第一次迭代中执行得很好,当到达header = in.nextLine() (在线程的run方法中)时抛出in.nextLine。我认为这个方法是阻塞的,应该等待输入吗?= null; int num = 0; whileout.pr
我遇到了一个将while()循环与阻塞方法结合在一起的问题。为了便于查看,我使用while(true) +转义条件。//escape condition to get out of the loop我担心的是,一旦线程进入while()循环,它就会被阻塞方法卡住,并且永远不会到达转义条件来退出。//this is m