日期:2014-05-20  浏览次数:20636 次

多线程常见的笔/面试总结
1、多线程是计算机CPU实行的最小单元
2、创建多线程有两种方式
     1)、继承Thread 类然后重写run()方法
     2)、实现Runnable接口(实际应用中用的比较多)
3、wait()和sleep()的区别:
    wait()会释放当前线程锁,仅在notify调用时线程被唤醒
    sleep()不会释放当前线程锁,且sleep()使线程进入睡眠状态,过了指定的时间自动执行线程
4、线程同步的两种方法
     1)、使用wait()、和notify()
     2)、使用关键字Synchronized 来修饰,它有三种写法
       方式1、作用在方法上
               Synchronized  void function(){
                  .........
               }
      方式2、作用在代码块上
                 void function(){
                Synchronized{....}
               }
      方式3、作用在变量上
            private Object obj = new Object ();
          Synchronized(obj){....} 
5、在多线程中,启动时start()方法,在底层,start()调用run()的方法,所以线程的启动是start()而不是run()
         
------最佳解决方案--------------------
哦,这些是基础,其实建创线程 还有Callable接口,这个是可以返回值的。
------其他解决方案--------------------
恩,拿最近的面试题,简单的做了总结,这个还真不知道,谢谢