创建匿名线程的5种方式

2023-11-08

package mythread;
/*
 * 使用匿名内部类开启线程
 */
public class Demo02anonymous_thread {

	public static void main(String[] args) {

		// 方式一:使用匿名内部类创建线程的子类对象
		Thread thread = new Thread() {
			
			@Override
			public void run() {
				System.out.println("我的线程执行了1");
			}
		};
		thread.start();
		
		
		
		// 方式二:使用匿名内部类创建线程的子类匿名对象
		new Thread() {
			
			@Override
			public void run() {
				System.out.println("我的线程执行了2");
			}
		}.start();
		
		
		
		// 方式三:使用匿名内部类的方式,创建线程执行目标类对象
		// 创建线程执行目标类对象
		Runnable runnable = new Runnable() {
			
			@Override
			public void run() {
				System.out.println("我的线程执行了3");
			}
		};
		// 通过目标创建线程对象
		Thread thread2 = new Thread(runnable);
		// 开启线程
		thread2.start();
		
		
		
		// 方式四:使用匿名内部类的方式,创建线程执行目标类匿名对象
		// 创建线程执行目标类对象
		// 通过目标创建线程对象
		Thread thread3 = new Thread(new Runnable() {
			
			@Override
			public void run() {
				System.out.println("我的线程执行了4");
			}
		});
		// 开启线程
		thread3.start();
		
		
		
		// 方式五:使用匿名内部类的方式,创建线程执行目标类匿名对象,并且创建的是线程的匿名对象
		// 创建线程执行目标类对象
		// 通过目标创建线程对象
		new Thread(new Runnable() {
			
			@Override
			public void run() {
				System.out.println("我的线程执行了5");
			}
		}).start();
	}

}

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

创建匿名线程的5种方式 的相关文章

  • java线程间通讯的几种方式

    文章目录 一 使用同一个共享变量控制 Synchronized wait notify Lock Condition 利用volatile 利用AtomicInteger 二 PipedInputStream PipedOutputStre
  • Java 四种线程池newCachedThreadPool,newFixedThreadPool,newScheduledThreadPool,newSingleThreadExecutor

    介绍new Thread的弊端及Java四种线程池的使用 对Android同样适用 1 new Thread的弊端 执行一个异步任务你还只是如下new Thread吗 new Thread new Runnable Override pub
  • Java 线程的生命周期(对应七大状态)

    博主前些天发现了一个巨牛的人工智能学习网站 通俗易懂 风趣幽默 忍不住也分享一下给大家 点击跳转到网站 线程的生命周期 线程状态的转换 通过代码输出线程的状态 代码如下 public class ThreadState public sta
  • Android中的定时器Timer、AlarmManager、CountDownTimer的使用

    1 Timer和TimerTask的使用 java util Timer定时器 实际上是个线程 定时调度所拥有的TimerTasks 1 创建一个Timer code class hljs cs has numbering style di
  • C#常用代码

    最近学习用C 写了几个程序 记录一下常用的几个操作 方便以后Copy 文件操作 FileStream fs null try byte buf FileStream fs new FileStream strSampleFileName F
  • Java异步注解@Async详解

    一 Async注解 Async的作用就是异步处理任务 在方法上添加 Async 表示此方法是异步方法 在类上添加 Async 表示类中的所有方法都是异步方法 使用此注解的类 必须是Spring管理的类 需要在启动类或配置类中加入 Enabl
  • CUDA学习笔记(5) 原子操作

    原子操作是指 当一个线程 Thread 要对同一个显存变量依次进行 读 计算 写 的操作时 这个 读 计算 写 的操作必须连贯地执行 中间不能插入任何其他操作 举个例子 假设我们想要用GPU统计 char data 0 32 1 0 1 这
  • 多线程、反射

    目录 线程 实现线程 死锁 反射 注解 多线程 在Java思想中 将并发完成的每一件事情称为线程 java语言提供了并发机制 程序猿可以在程序中执行多个线程 每一个线程完成一个功能 并与其他线程并发执行 这种机制称为多线程 一个简单的线程代
  • Java死锁

    一 死锁是什么 死锁 当两个线程相互等待对方释放同步监视器便会发生死锁 死锁产生的4个必要条件 1 互斥条件 一个资源每次只能被一个线程使用 2 请求与保持条件 一个线程因请求资源而阻塞时 对已获得的资源保持不放 3 不剥夺条件 线程已获得
  • QT多线程(QThread)小结

    QThread只有run函数是在新线程里的 其他所有函数都在QThread生成的线程里 如果QThread是在ui所在的线程里生成 那么QThread的其他非run函数都是和ui线程一样的 所以 QThread的继承类的其他函数尽量别要有太
  • JavaFX 程序退出时结束子线程

    1 前言 在JavaFX的程序开发中 在调用子线程之后子线程还未结束时 我们点击应用程序右上角的关闭按钮的时候 我们会发现程序还没有真正的结束运行 这是因为我们的子线程没有在JavaFX的管理之下 2 如何关闭 在主方法中找到Stage类
  • 澄清并发编程工具CountDownLatch的误区

    无论你对CountDownLatch的认知是通过看资料还是看博客 很多人都会存在一些误区 现在我也是站在巨人 某些大牛 的肩膀上去总结下这些误区 并把CountDownLatch的含义及用法仔细的演示一遍 1 常见误区 误区一 CountD
  • 计算机操作系统-进程篇

    一 进程 进程 progress 是指计算机中已运行的程序 每个进程都有自己的地址空间 内存 寄存器和堆栈等资源 它们与其他进程相互隔离 互不干扰 进程是操作系统中最基本的资源分配单位 也是操作系统中最重要的概念之一 在操作系统中 进程是由
  • 关于tomcat繁忙线程数获取

    在某些情况下 我们需要对tomcat的繁忙线程数进行监控以满足我们队应用服务器状态信息的把控 那么我们该如何通过我们自定义的接口来获得tomcat的繁忙线程数 首先 我们应该想到tomcat本身是否为我们提供了类似的方法 博主在实际开发中拜
  • Java的线程同步 & 并发操作

    并发 CUP在同一时间或同一时段内只能执行一件事情 而不同时件执行时 切换得十分快速 因为CUP的频率非常高 切换的速度人根本感受不出来 同步 同步是多个任务进行时 按照一定的规律进行着 线程并发 同一时间间隔中 有多个线程在同时执行 就是
  • SimpleDateFormat线程不安全及解决办法

    以前没有注意到SimpleDateFormat线程不安全的问题 写时间工具类 一般写成静态的成员变量 不知 此种写法的危险性 在此讨论一下SimpleDateFormat线程不安全问题 以及解决方法 为什么SimpleDateFormat不
  • 条件变量(condition variable)详解

    原理 假设我们需要解决这样一个问题 一个列表记录需要处理的任务 一个线程往此列表添加任务 一个线程processTask处理此列表中的任务 这个问题的一个关键点在于processTask怎么判断任务列表不为空 一般有两种方法 一 proce
  • 主线程退出后,子线程会不会退出

    额 好吧 这是个标题党 其实所有的线程都是平级的 根本不存在主线程和子线程 下文所述为了方便 将在main函数中的线程看做主线程 其它线程看成子线程 特此说明 先考虑以下代码 include
  • 什么是SSL协议?

    转自 微点阅读 https www weidianyuedu com 什么是SSL协议 SSL协议是一种安全传输协议 SSL是SecureSocketLayer的缩写 即安全套接层协议 该协议最初由Netscape企业发展而来 目前已经成为
  • iOS线程初探(四) GCD 和 NSOperation 小结

    参考资料 关于iOS多线程 看我就够了 GCD 在GCD中 有两个概念很重要 那就是任务和队列 任务 其实就是你需要做的事情 一个Block而已 任务有两种执行方式 同步执行和异步执行 同步执行 会阻塞当前线程 直至该任务执行完成后当前线程

随机推荐

  • Java连接kafka

    1 maven依赖
  • 线上问题排查-HBase写数据出现NotServingRegionException(Region ... is not online)异常

    今天线上遇到一个问题 有一台服务器的cpu持续冲高 排查发现是我们的一个java应用进程造成的 该进程在向hbase中写入数据时 日志不断地打印下面的异常 Copy org apache hadoop hbase NotServingReg
  • com.fasterxml.jackson.databind.exc.InvalidDefinitionException: No serializer found

    fasterxml jackson 将对象转换为json报错处理 Spring Boot程序中 JsonIgnoreProperties与 JsonIgnore基本使用
  • python中的pd进行数据处理

    1 用pd读取excel中的的某一列生成列表 并将集合或列表写进excel def excel one line to list df pd read excel r poi grid xlsx usecols 1 names None 读
  • Robot Framework Selenium UI自动化测试 --- 进阶篇

    回顾 如果您对Robot Framework Selenium 以下简称RFS 没有基础概念和使用经验 请先阅读入门篇 入门篇对RFS有基础的介绍和使用教程 展望 本篇主要讲述了如何工程化的使用RFS 并穿插介绍各种常用关键字和使用技巧 希
  • vue3 数组清空与重新赋值

    vue3里面 如果数组是用reactive 声明的 要清空数组得用list length 0 如果想要使用list 或者直接赋值类型list 1 2 3 4 5 得把数组用ref 来声明 然后用list value 来修改 然后如果是对象里
  • 使用Stream流,根据条件去重并求数量

    一 去重类型 1 先创建数据 放入4个对象 其中有两个对象name属性相同 求name不一样的对象有多少数量 List
  • 锈湖新作地铁繁花试玩版正式上线啦

    地铁繁花是锈湖厂商新作点击式解谜冒险解谜游戏 英文名称为 Underground Blossom 在游戏中你将深入锈湖的地下 扮演并追溯Laura Vanderboom的人生和记忆吧 从一个车站到另一个车站 每个地铁站都象征着劳拉的一段过去
  • Ubuntu16.04下安装JDK1.8

    前提条件 拥有Ubuntu16 04环境 安装步骤 下载JDK安装包 下载版本 jdk 8u171 linux x64 tar gz 下载方式 云盘下载 云盘下载 提取码 7brp 官网下载 https www oracle com tec
  • python获取clickhouse数据表的全部列名称

    使用python获取的方法 import clickhouse connect client clickhouse connect get client host 127 0 0 1 def get col name table name
  • 详解:Char 和 varChar 之间的区别

    MySQL中的字符串有两个常用的类型 char和varchar 二者各有优势 下面我们来详细分析一下 通常在建表的时候对于String 类型的数据定义我们或许会很纠结 什么时候用char 什么时候用 varchar 呢 首先可以明确的是 c
  • 如何解决java.lang.NoClassDefFoundError--第二部分

    如何解决NoClassDefFoundError 第二部分 第一部分请看 http vipcowrie iteye com blog 1561291 本文面向的是JAVA初学者 建议你们自己编译和运行例子程序 本文包含了NoClassDef
  • c++单链表的简单实现(内含实现代码)

    考研报名等待之时闲来无事 写了一个简单的单链表 简单实现了以下功能 头插法建立单链表 按序遍历链表 单链表原地排序 不使用额外的空间 单链表按序删除 单链表原地倒置 附上代码如下 节点结构体定义 typedef int ElemType t
  • uniapp uview内置样式记录

    uview内置样式 文字省略 u line 1 u line 2 u line 3 u line 4 u line 5五个类名在文字超出内容盒子时 分别只显示一行 两行 三行 四行 五行 省略号 定位 uView内置了关于相对和绝对定位的两
  • 基于springboot的旅游信息管理系统完整源码

    基于springboot的旅游信息管理系统完整源码 技术栈 jdk1 8 mysql8 maven3 6 0 idea 功能模块 旅游路线 旅游景点 旅游酒店 旅游车票 旅游保险 旅游策略 订单管理 留言管理 数据分析等等 项目下载 htt
  • Matlab 如何生成一个[a,b]范围内随机整数的2种方法【已经解决】

    如何使用MATLAB生成一个 a b 范围内的随机整数 比如 随机生成 9 13 范围内的一个 或多个 整数 首先感谢 slandarer的指正 现已经更改 round 为四舍五入取整 而非向上取整 方法1为一个较为不错的方法 方法1 ra
  • 游戏开发-虚幻引擎天源了 [分享]

    https www unrealengine com zh CN 虚幻引擎4现在可供每个人免费使用 而且所有未来的更新都将免费 您可以下载引擎并将其用于游戏开发的各个方面 包括教育 建筑以及可视化 甚至虚拟现 实 电影和动画 当您发布游戏或
  • 计算机图形学入门(十六)-光线追踪(渲染方程)

    本部分主要介绍了渲染方程的逐步完善和简单的推导过程 从BRDF开始 到反射公式的推导再到渲染方程的完善 最后展示了实际渲染的例子 学习视频 GAMES101 现代计算机图形学入门 闫令琪 哔哩哔哩 bilibilihttps www bil
  • leaftlet 显示个性化图标、旋转图标

    1 引用leaftlet 高版本 比如1 8 3 在map js 中定义图标 L marker geo rotationAngle 270 icon L AwesomeMarkers icon icon awesomeIcon prefix
  • 创建匿名线程的5种方式

    package mythread 使用匿名内部类开启线程 public class Demo02anonymous thread public static void main String args 方式一 使用匿名内部类创建线程的子类对