码迷,mamicode.com
首页 > 编程语言 > 详细

[Java并发编程之美]第1章 线程基础(待更新)

时间:2019-08-03 00:13:39      阅读:109      评论:0      收藏:0      [点我收藏+]

标签:自己   重写   接口   局部变量   not   获得   共享   访问   run   

第1章 线程

线程与进程

  • 进程是操作系统资源分配和调度的基本单位,但cpu资源是分配到线程的,也就是线程是CPU分配的基本单位。
  • 线程自己的栈资源中,存放的局部变量是线程私有的,其他线程无法访问,除此之外栈还存线程的调用栈帧。

线程创建

三种方式:实现Runnable接口的run方法;继承Thread类并重写run方法;使用FutureTask方式。

线程等待与通知

1 wait()

线程先要事先获得共享变量上的监视器锁,然后当一个线程调用一个共享变量的wait()方法,该线程会被阻塞挂起,并且释放掉共享变量上的锁。直到发生:(1)此后其他线程调用了该共享对象的notify或notifyAll()方法 (2)此后其他线程调用了该线程的interrupt()方法。(该线程会抛出InterruptedException异常返回)

2 wait(long timeout)
  • 超时参数timeout:如果该线程调用wait(long timeout)挂起后,(过了timeout ms时间仍未被唤醒,) 该函数会因为等待时间超时返回。
  • wait()内部就是调用了wait(0),两者相当。
3 wait(long timeout,int nanos)
4 notify()

[Java并发编程之美]第1章 线程基础(待更新)

标签:自己   重写   接口   局部变量   not   获得   共享   访问   run   

原文地址:https://www.cnblogs.com/coding-gaga/p/11291532.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!