zoukankan      html  css  js  c++  java
  • java多线程快速入门(一)

    1、什么是进程

      比如:QQ、QQ游戏、eclipse都是进程,可以通过任务管理器查看进程

    2、进程和线程区别

      线程是进程的一部分,一个进程可以包含多个线程,一个线程只能属于一个进程

      进程是所有线程的集合,一个线程是进程中的一条执行路径

    3、多线程的好处

      多线程的好处就是提高程序的效率

    4、多线程的应用场景

      迅雷下载视频、QQ同时和多人聊天、批量发送短信,批量上传资源

    5、使用继承Thread类还是使用实现Runnable接口好?

      使用实现Runnable接口好,原因是接口可以实现多个,类只能继承一个,实现了Runnable接口还可以继承其它的类,继承了Thread类就不能再继承其它的类,一般情况下使用线程池方便管理,避免浪费资源。

    6、启动线程是使用start方法还是run方法?

      run方法相当于调用重写后的run方法,而不是去开启一个线程

    7、多线程创建方式

      继承Thread、实现Runnable接口、匿名内部类

    8、什么是java内存模型

      就是多个线程访问同一变量的时候保证一致性

    9、使用wait和sleep区别

      wait:调用wait方法,当前线程释放锁,并且必须要调用notify才能重新变为阻塞

      sleep:调用sleep不会释放当前锁,当前线程会等待sleep时间到达,继续执行

    10、Lock与synchronized的区别

      Lock锁是JDK1.5之后推出的并发包里面的关键字,Lock锁可以人为的释放锁(相当于汽车中的手动挡)

      synchronized当线程执行完毕或者抛出异常的话,锁自动释放(相当于汽车中的自动挡)

  • 相关阅读:
    Error:Execution failed for task ':app:transformClassesWithDexForDebug'.
    Appcan——Box
    基于SSH框架的网上商城的质量属性
    框架的选择
    软件体系结构的认识
    Cocos2d-x项目创建方式
    一、设计模式简介
    数组与字符串四(例子、使用(2))
    数组与字符串三(Cocos2d-x 3.x _Array容器)
    数组与字符串二(例子、使用)
  • 原文地址:https://www.cnblogs.com/jiefu/p/10013508.html
Copyright © 2011-2022 走看看