zoukankan      html  css  js  c++  java
  • 面试题---多线程

     

    什么是多线程?

    在一个应用程序中,同时,有多个不同的执行路径。

    说一下多线程的好处

    提高程序效率。

    线程和进程有什么区别?

    线程是进程的一条执行路径,而进程是线程的集合。

    什么是线程同步、异步?

    线程同步表示,当前线程执行完后下一个线程接着执行。

    线程异步表示,  在一个应用程序中,同时,有多个不同的执行路径。例如 javaweb ajax android handler

    线程之间如何同步

    线程之间同步使用 synchronized、wait 与 notify

    什么是线程不安全?如何解决?(重点)

    就是在多个线程共享同一个数据会受到其他线程的干扰。

    如何解决:使用线程同步技术, 用上锁(synchronized)。 让一个线程执行完了,在让另一个线程执行。

    如何创建一个线程?有几种方法?

    继承thread类, 重写run方法、实现Runnalbe接口,重写run方法 , 启动一个线程用start();

    是使用Runnalbe接口好?还是继承Thread类好?

     是实现Runnalbe接口好,因为实现的接口还可以继续继承。如果继承了Thread类不能在继承。

    sleep()和 wait()有什么区别?

    a、sleep是让当前线程指定休眠时间,然后继续工作  不释放锁

    b、让当前线程wait则是等待,直到有线程通知notify()唤醒他才会重新工作。释放锁

     

  • 相关阅读:
    Ubuntu 下安装Mongodb
    iOS 配置支付宝
    Spring异步任务处理,@Async的配置和使用
    [Tue, 11 Aug 2015 ~ Mon, 17 Aug 2015] Deep Learning in arxiv
    linux-shell脚本命令之awk
    字符串写入文件
    UVa 10773
    Flex下拉框
    DELPHI dbgrid 选中的是第几行 怎么判断?
    delphi 取得数据集某字段值的六种方法
  • 原文地址:https://www.cnblogs.com/3020815dzq/p/10104561.html
Copyright © 2011-2022 走看看