通过实现Runnable接口创建线程过程中的底层机制——设计模式(代理模式)

这段代码该怎么理解呢,一个最简单的Thread方法

java;gutter:true;
class Threads implements Runnable{//在这里Threads相当于Thread类
private Runnable targat = null;//类型为Runnable的属性target
@Override
public void run() {
if (targat != null){
targat.run();
}
}
public Threads(Runnable targat) {//构造器
this.targat = targat;
}
public void start(){
start0();//真正实现多线程的方法
}
public void start0 (){
run();
}
}

Original: https://www.cnblogs.com/nanfengashuai/p/15264687.html
Author: Blueshadow
Title: 通过实现Runnable接口创建线程过程中的底层机制——设计模式(代理模式)

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/588345/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • JS特殊监听方法

    javascript;gutter:true; //监听元素变化classList //监听元素变化className //方法一 var tab2Interval = setIn…

    Java 2023年6月6日
    079
  • logback学习

    第一种配置 日志输出方式(简单的): 在application.yml 输入 xml;html-script:false;quick-code:true;smart-tabs:tr…

    Java 2023年6月13日
    073
  • 计算Java对象内存大小

    本文以如何计算Java对象占用内存大小为切入点,在讨论计算Java对象占用堆内存大小的方法的基础上,详细讨论了Java对象头格式并结合JDK源码对对象头中的协议字段做了介绍,涉及内…

    Java 2023年5月29日
    099
  • Spring boot——Actuator 详解

    management.health.status.http-mapping.FATAL=503 如果你需要更多的控制,你可以定义自己的 HealthStatusHttpMapper…

    Java 2023年5月30日
    078
  • 高德坐标系转wgs(苹果坐标系) java代码

    private static double PI = 3.14159265358979324;public static double[] gcj02ToWgs(double ln…

    Java 2023年5月29日
    0100
  • 并发一致性问题

    在并发环境下,事务的隔离性很难保证,因此会出现很多并发一致性问题。 丢失修改(修改被覆盖) T1 和 T2 两个事务都对一个数据进行修改,T1 先修改,T2 随后修改,T2 的修改…

    Java 2023年6月13日
    069
  • Spring为list集合和map集合类型赋值

    1.通过List标签在property标签中直接进行赋值 2.通过配置一个list集合类型的bean,需要使用util的约束(直接写,可以自动导入) 然后再通过id引用该list集…

    Java 2023年6月16日
    092
  • springboot单元测试@test的使用

    @RunWith(SpringRunner.class) @SpringBootTest(classes = Application.class) public class Spr…

    Java 2023年5月30日
    074
  • nginx配置返回文本或json

    有些时候请求某些接口的时候需要返回指定的文本字符串或者json字符串,如果逻辑非常简单或者干脆是固定的字符串,那么可以使用nginx快速实现,这样就不用编写程序响应请求了,可以减少…

    Java 2023年5月30日
    081
  • 【设计模式】Java设计模式-桥接模式

    【设计模式】Java设计模式 – 桥接模式 😄 不断学习才是王道🔥 继续踏上学习之路,学之分享笔记👊 总有一天我也能像各位大佬一样🏆原创作品,更多关注我CSDN: 一个…

    Java 2023年6月16日
    092
  • 企业DevOps之路:Jenkins 流水线

    Pipeline 概述 Pipeline 即流水线,是 jenkins2.X 的新特性,是 jenkins 官方推荐使用的持续集成方案。与传统的自由风格项目不同,它是通过 jenk…

    Java 2023年6月7日
    0100
  • 面试遇到的常用问题

    一、线程池的问题 1、newSingleThreadExecutor 创建一个单线程的线程池。这个线程池只有一个线程在工作,也就是相当于单线程串行执行所有任务。如果这个唯一的线程因…

    Java 2023年6月6日
    079
  • JSP的文件上传和下载

    文件的上传和下载 文件的上传和下载,是非常常见的功能。很多的系统中,或者软件中都经常使用文件的上传和下载。比如:微信头像,就使用了上传。邮箱中也有附件的上传和下载功能。 文件的上传…

    Java 2023年6月15日
    0114
  • Java基础–线程创建方式

    线程的创建主要有两种形式,通过 继承Thread或者 实现Runnable&#x63…

    Java 2023年6月5日
    066
  • 狂神说Springcloud

    熟练使用SpringBoot 微服务快速开发框架 了解过Dubbo + Zookeeper 分布式基础 电脑配置内存不低于8G(我自己的是16G) 给大家看下多个服务跑起来后的内存…

    Java 2023年6月7日
    069
  • 对象创建过程

    通常情况下,我们创建一个对象,只需要使用new关键字即可。而对于java虚拟机来说,需要经历一系列过程。首先,需要找到对应的类是哪个,这个类是否已经加载,没有加载还需要将它先加载进…

    Java 2023年6月9日
    075
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球