多线程——面试题

1人阅读 评论(0) 收藏 举报
分类:

1. 现有T1,T2,T3三个线程,你如何保证T2在T1执行完后执行,T3在T2执行完后执行?

    答:使用join方法。

2. 在Java中Lock接口比synchronized块的优势是什么?你需要实现一个高效的缓存,它允许多多个用户读,但只允许一个用户写,以此来保持它的完整性,你会怎样去实现它?

答:Lock可以达到与synchronized块同样的效果,并且在扩展功能上也更强大,比如具有嗅探锁定、多路分支通知等功能,使用上也更灵活。

3. wait()方法与sleep()方法的区别?

答:sleep():让出CPU,等时间结束后,进入就绪状态与其它线程一起争抢CPU。

                          不会释放锁。

      wait(): 会释放锁。

4. 线程状态都有哪些?

   (1)新建状态(New)

            用new语句创建的线程处于新建状态,此时它和其它Java对象一样,仅仅在堆中分配了内存。

    (2)就绪状态(Runnable)

           当一个线程对象创建后,其它线程调用它的start()方法,该线程就进入就绪状态,Java虚拟机会为它创建方法调用栈和程序计数器。处于这个状态的的程序位于可运行池中,等待获得CPU的使用权。

   (3)运行状态(Running)

           处于这个状态的线程占用CPU,执行程序代码。只有处于就绪状态的线程才有机会转到运行状态。

   (4)阻塞状态(Bolcked)

           阻塞状态是指线程因为某些原因放弃CPU,暂时停止运行。当线程处于阻塞状态时,Java虚拟机不会给线程分配CPU.直到线程重新进入就绪状态,才有机会转到运行状态。

  (5)死亡状态(Dead)

           当线程退出run()方法时,就进入死亡状态,改线程结束生命周期。



查看评论

多线程经典面试题

多线程在笔试面试中经常出现,下面列出一些公司的多线程笔试面试题。首先是一些概念性的问答题,这些是多线程的基础知识,经常出现在面试中的第一轮面试(我参加2011年腾讯研究院实习生招聘时就被问到了几个概念...
  • jjj19891128
  • jjj19891128
  • 2014-04-24 10:49:01
  • 21289

多线程的40个面试题总结(上)

周末在微信公共号看到一篇关于《线程的40个道题》的文章,由于今年工作之前参加过几次面试,所以觉得这篇文章总结的很好 只要读者朋友们耐心看完,并且在阅读过程中遇到自己疑惑的地方时自己能动手查一查做一做...
  • u012459345
  • u012459345
  • 2016-04-18 14:57:48
  • 18427

iOS 网络和多线程面试题01~[有答案]

//联系人:石虎  QQ: 1224614774 昵称:嗡嘛呢叭咪哄 一.选择题(前三题是多选 ,后面为单选题) 1.  以下对堆和栈的描述正确的是( 多选ABD ) A.栈区[stack]由编...
  • shihuboke
  • shihuboke
  • 2017-06-17 20:50:57
  • 1524

C++ 多线程 面试题详解

http://yuanshuilee.blog.163.com/blog/static/217697275201441145324601/ 2014 强烈推荐:http://laoar.net/b...
  • Primeprime
  • Primeprime
  • 2018-01-16 22:33:46
  • 343

Java多线程高并发基础面试题

1.进程和线程有什么不同?            一个进程可以包含多个线程, 线程共享地址映射空间。           不同的线程有不同的地址映射空间。 2.多线程编程的好处。   ...
  • alw2009
  • alw2009
  • 2016-09-19 17:13:47
  • 1698

一道阿里多线程面试题的分析与应对

引言: 通过一道阿里的Java多线程面试题目分析,来深入理解Java线程的状态转变过程。...
  • blueheart20
  • blueheart20
  • 2014-03-06 11:25:51
  • 3333

java多线程面试题

  • 2017年11月08日 23:09
  • 678KB
  • 下载

C/C++ 之 多线程 百度、华为、360 面试面试题汇总(一)

本文来自http://blog.csdn.net/morewindows/article/details/7392749无答案解析 以下提供答案参考: 第一题:线程的基本概念、线程的基本状态及状态之...
  • u010236550
  • u010236550
  • 2013-10-07 09:47:55
  • 6865

C++并发实战:面试题1:一道多线程笔试题

题目:子线程循环 10 次,接着主线程循环 100 次,接着又回到子线程循环 10 次,接着再回到主线程又循环 100 次,如此循环50次,试写出代码。 #include #include #i...
  • liuxuejiang158
  • liuxuejiang158
  • 2014-03-24 18:17:27
  • 5285
    个人资料
    持之以恒
    等级:
    访问量: 8616
    积分: 425
    排名: 11万+
    最新评论