zoukankan      html  css  js  c++  java
  • 多线程随手记

    一、一个进程包含一个线程或多个线程。

    二、线程是最小的执行单位。这意味着一个程序可以同时进行两个或多个任务的功能。

    三、多线程编程的目的是最大限度的利用CPU资源,使用CPU的空闲时间保持到最低。

    四、处于创建状态的线程只是一个空的线程对象,系统并不为它分配资源。

    五、当执行start()方法将为线程分配资源,安排其运行,并调用线程的run()方法,这样就是使得该线程处于可运行状态。

    六、当发生以下事件时,处于运行时的线程会由运行状态转为不可运行状态:

      ①、调用Thread.sleep()方法

      ②、线程调用wait()方法等待特定条件的满足。

      ③、线程输入/输出阻塞

    七、当线程的run()方法执行结束后,线程自然消亡。

    八、Java中的每一个对象都一个锁(lock),或者叫监视器(monitor),当线程访问某个对象的synchronized方法时,表示将这个对象上锁,此时其他线程都无法访问这个synchronized方法,而且也无法访问这个对象的其他synchronized方法。直到这个线程执行完毕或者抛出异常或者调用了wait()方法后才会将所释放掉,其他线程才有可能去访问这个synchronized方法。

    九、一个类中,先执行静态代码块,接着执行代码块,接着再执行构造方法。一个类中可以有多个静态代码块,也可以有多个代码块。

  • 相关阅读:
    积分图像
    [悟] 因上努力,果上随缘(转)
    不要走的太匆忙( 转)
    一个程序员如何快速赚到一百万?(转)
    vi文字处理器
    Linux常用命令
    Hadoop之MapReduce
    Hadoop全分布模式操作
    Hadoop之HDFS
    Hadoop生态系统
  • 原文地址:https://www.cnblogs.com/GooPolaris/p/7920310.html
Copyright © 2011-2022 走看看