什么情况下只能用Runable不能用Thread?
今天金蝶校招面试时被问到了什么情况下只能用Runable不能用Thread。不是说完全就不能用了,只是说用Thread的话会出现问题。 然后面试官提示说你们学习的时候或者你们老师应该都会讲这个问题。。。我印象中老师只讲过区别,实现Runable更好,但是貌似没有讲过用Thread会出问题。。请教一下各位!
还问了个问题,JVM里面的三种ClassLoader。。然后又问了下JVM参数如何设置,如何设置最大最小内存。。然后,我就不会了。。面试官见我不会就问了下JVM的默认内存是多大。。这个,,,我也不知道了。。学了这么久的Java,居然不知道JVM默认内存大小。印象中好像看到过时64M,不知道对不对。。
[解决办法]
Runable和thread的区别(多线程必须用Runable) - 微风夜明
http://www.tuicool.com/articles/juMre2
[解决办法]
默认64M
因为java单继承的机制 所以在已经形成继承结构的情况下 只能使用接口实现
[解决办法]
要多线程必须用private native void start0();否则都是在跑普通方法
"只能用Runable不能用Thread"意思应该说的是线程池吧,ThreadPoolExecutor 把线程当成Runable在处理,比如你创建的线程优先级你自己设过了,线程池是不会管你自己设置的优先级的,还有告诉你两个线程的知识点,优先级可以在线程开始跑后再重新设置优先级,Thread.currentThread().setPriority(),但守护线程只能在线程start前设置
[解决办法]
这面试还有点难度啊,呵呵
[解决办法]
继续关注java开发!
[解决办法]
继续关注java开发!