zoukankan      html  css  js  c++  java
  • 多线程入门

    什么是线程?

      线程就是正在独立运行的一条执行路径,一个独立的执行单元。

    什么是进程

      进程就是正在运行的程序,它是线程的集合。

    代码的执行顺序靠那个线程?

      在进程中,一定有一个线程,这个线程就是主线程。(比如Java中的main方法)

    使用多线程有什么好处?

      多线程的好处提高程序的效率使用多线程时,每个线程互不影响,因为每个线程都在独立运行。

    多线程的应用场景:

      多线程下载、QQ、爬虫、前段开发ajax(异步上传),分布式job(需要同时一个执行多个任务调度),等。

    有哪些方式可以创建多线程?

      ①使用继承Thread类方式,重写run方法。

           ②使用实现Runnable接口方式。

      ③使用匿名内部类方式。

      ④callable

      ⑤使用线程池创建线程。

    什么是同步什么是异步?

      ①同步(单线程):代码从上往下进行执行。

      ②异步(多线程):开启多线程后,代码不会从上往下进行执行。

    使用继承范式创建线程好还是实现Runnable接口创建线程好 ?

      使用Runnable接口创建线程的方式更好,因为开发都是以面向接口编程,如果使用继承方式那么将不能继承其他类。

    常用线程API方法:

      ①start():启动线程。

      ②current():获取当前线程对象。

      ③getID():获取当前线程ID。Thread-编号,该编号从0开始。

      ④getName():获取当前线程名称。

      ⑤sleep(long mill):休眠线程。

      ⑥stop:停止线程。

      ⑦Thread:分配一个新的Thread对象。

      ⑧Thread(Runnable r):分配一个新的Thread对象,具有指定的name正如其名。

      ⑨Thread(Runnable r):分配一个新的Thread对象。

      ⑩Thread(Runnable r,Runnable r):分配一个新的Thread对象,具有指定的name正如其名。

    什么是守护线程?

        Java有两种线程,一种是用户线程,另一种是守护线程。

        用户线程是用户自定义创建的线程,主线程停止,用户线程不会停止

       护线程进程不存在或主线程停止,守护线程也停止

       使用setDaemon(true)方法设置为守护线程。

     多线程的几种状态:

      ①新建状态

      ②准备状态

      ③运行状态

      ④休眠状态

      ⑤ 停止状态

    Join方法作用:

      join()方法是让其他线程变为等待,

      t1.join()  //让其他线程变为等待,直到线程t1执行完毕才释放。

  • 相关阅读:
    Codeforces Round #324 (Div. 2) D. Dima and Lisa 哥德巴赫猜想
    Codeforces Round #324 (Div. 2) C. Marina and Vasya 贪心
    Codeforces Round #324 (Div. 2) B. Kolya and Tanya 快速幂
    Codeforces Round #324 (Div. 2) A. Olesya and Rodion 水题
    使用spring-loaded实现应用热部署
    maven中properties标签定义变量
    java中的匿名内部类总结
    泛型类型限定和通配符类型限定
    基于ActiveMQ的Topic的数据同步——消费者持久化
    基于ActiveMQ的Topic的数据同步——初步实现
  • 原文地址:https://www.cnblogs.com/gujian2/p/12168261.html
Copyright © 2011-2022 走看看