复习javase多线程

1.在Java中实现多线程有三种方式

  • 第一种:编写一个类,直接继承java.lang.Thread,重写run方法。
  • 第二种:编写一个类,实现java.lang.Runnable接口。
  • 第三种:创建一个”未来任务类“对象,在参数中需要给一个Callable接口实现类对象。

2.多线程的生命周期

  复习javase多线程

3.线程相关的操作

  • 如何获取当前线程 :Thread.currentThread()
  • 获取线程对象的名字:Thread.currentThread().getName()
  • 修改线程对象的名字:Thread.currentThread().setName()
  • 线程的sleep方法:
    • 如何叫醒一个正在睡眠的线程:Thread.interrupt()
  • 如何强行终止一个线程的执行
  • 在线程类中打一个布尔标记run,想要关闭的时候把run改为false就可以了

 

4.关于多线程并发的环境下,数据安全的问题

  • 线程安全问题三个条件
    • 多线程并发
    • 有共享数据
    • 共享数据有修改行为 
  • 解决方法是让线程排队执行
  • sychronized的三种使用方法        
    • 第一种,同步代码块
    • 第二种,在实例方法上使用sychronized
    • 第三中,在静态方法上使用sychronized

5.死锁代码

6.关于Object类中的wait和notify方法(消费者和生产者模式)

 

上一篇:Java-TCP Socket编程


下一篇:Java 并发编程之同步工具类信号量 Semaphore