1.多线程作用
发挥多核CPU优势;防止阻塞;便于建模
2.Java实现线程的几种方式
继承Thread类实现多线程
实现Runnable接口方式实现多线程
使用ExecutorService.Callable.Future实现有返回结果的多线程
3.多线程同步有哪几种方法
Synchronized关键字,Lock锁实现,分布式锁等
4.线程中的wait()和sleep()有什么区别
sleep()和wait()都可以用来放弃CPU一定时间,不同点在于如果线程有某个对象的监听器,sleep()不会放弃这个对象的监听器,wait()会放弃。
5.线程过多会造成栈溢出,也有可能造成堆内异常。