欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

JDK源码解析 Runable是一个典型命令模式,Runnable担当命令的角色,Thread充当的是调用者,start方法就是其执行方法

发布时间:2025/4/16 编程问答 60 豆豆
生活随笔 收集整理的这篇文章主要介绍了 JDK源码解析 Runable是一个典型命令模式,Runnable担当命令的角色,Thread充当的是调用者,start方法就是其执行方法 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

JDK源码解析

Runnable是一个典型命令模式,

Runnable担当命令的角色,Thread充当的是调用者,start方法就是其执行方法

/命令接口(抽象命令角色) public interface Runnable {public abstract void run(); } ​ //调用者 public class Thread implements Runnable {private Runnable target;public synchronized void start() {if (threadStatus != 0)throw new IllegalThreadStateException(); ​group.add(this); ​boolean started = false;try {start0();started = true;} finally {try {if (!started) {group.threadStartFailed(this);}} catch (Throwable ignore) {}}}private native void start0(); }

会调用一个native方法start0(),调用系统方法,开启一个线程。

而接收者是对程序员开放的,可以自己定义接收者。

/*** jdk Runnable 命令模式* TurnOffThread : 属于具体*/ public class TurnOffThread implements Runnable{private Receiver receiver;public TurnOffThread(Receiver receiver) {this.receiver = receiver;}public void run() {receiver.turnOFF();} } *** 测试类*/ public class Demo {public static void main(String[] args) {Receiver receiver = new Receiver();TurnOffThread turnOffThread = new TurnOffThread(receiver);Thread thread = new Thread(turnOffThread);thread.start();} }

 

总结

以上是生活随笔为你收集整理的JDK源码解析 Runable是一个典型命令模式,Runnable担当命令的角色,Thread充当的是调用者,start方法就是其执行方法的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。