Java基础(023)-Java多线程

|1359字|346阅读

一、Java多线程介绍

1.1线程的生命周期

1.1.1 线程的生命周期图

1
2
### 1.1.2 菜鸟教程
![线程的生命周期](https://www.runoob.com/wp-content/uploads/2014/01/java-thread.jpg)


二、Java实现多线程的方式

2.1 方式一 继承Thread类

2.2 方式二 实现Runnable接口

方式三 通过 Callable 和 Future 创建线程


三、Java多线程中的核心方法

Thread.run();

如果该线程是使用独立的 Runnable 运行对象构造的,则调用该 Runnable 对象的 run 方法;否则,该方法不执行任何操作并返回。

Thread.start();

使该线程开始执行;Java 虚拟机调用该线程的 run 方法。

Thread.sleep();

Thread.stop();

如果该线程是使用独立的 Runnable 运行对象构造的,则调用该 Runnable 对象的 run 方法;否则,该方法不执行任何操作并返回。

Thread.notify();

Thread.notifyAll();

Thread.interrupt();

thread.stop();

public static void yield()

暂停当前正在执行的线程对象,并执行其他线程。

public final void setName(String name)

改变线程名称,使之与参数 name 相同。

public final void setPriority(int priority)

更改线程的优先级。

public final void setDaemon(boolean on)

将该线程标记为守护线程或用户线程。

public final void join(long millisec)

等待该线程终止的时间最长为 millis 毫秒。

public void interrupt()

中断线程。

public final boolean isAlive()

public static boolean holdsLock(Object x)

当且仅当当前线程在指定的对象上保持监视器锁时,才返回 true。

public static Thread currentThread()

返回对当前正在执行的线程对象的引用。

public static void dumpStack()

将当前线程的堆栈跟踪打印至标准错误流。


实现线程同步的方法


线程死锁及生产者消费者问题


线程间通信


线程控制:挂起、停止和恢复


多线程安全 锁

|1359字|346阅读
         
返回顶部