课程
/后端开发
/Java
/细说多线程之Thread VS Runnable
为什么输入执行了,守护线程会阻塞?
2015-11-11
源自:细说多线程之Thread VS Runnable 3-3
正在回答
在这里一共有两个线程①.守护线程 ②主线程(main)
老师说的:若没有线程需要守护线程“守护”,那么守护线程就会退出
程序运行之后两条线程都在执行:②线程再启动了①线程然后 继续执行到sc.next()语句 等待键盘输入
①线程在启动之后就不停的写东西到文件中。
如果在这之后的过程中,程序员在键盘中输入的任意字符,毁导致②继续执行,然后②就执行完啦,你看main方法中就那几行代码,全都执行完啦! 然后主线程就退出啦! 然后①线程就没有线程可以守护啦,自己也就退出啦!
哀幻暝
因为主程序执行到sc.next();时会进入等待状态,知道你输入后sc对象接收到了来自键盘的信息,便会继续执行下面的执行,然后结束
举报
认识Thread和Runnable的区别,以及使用jstack生成线程快照
2 回答为何我的守护线程不终止 键盘输入阻塞那句代码写了的
1 回答主线程和守护线程问题
1 回答如果主线程没有阻塞的话,守护线程是不是就不会运行。也就是说去掉sc.next()这个代码之后会发生什么情况
2 回答为什么在线程1的执行过程中还会被抢占资源?至少也得等run方法执行完才被抢占吧?
2 回答为什么我的永远都是第一个启动的线程就把程序给执行完了?