post_img

10-重排序

摘要

重排序 线程内部两行代码时,执行顺序和源代码中的书写顺序不一致,就是发生了重排序,重排序现象是由以下结果导致: 编译器优化:包括J …

post_img

09-Java内存模型

摘要

Java内存模型 Java内存交互模型是一组内存操作规范,需要JVM实现来遵守,以便开发者可利用这些规范,更方便的开发多线程程序; …

post_img

08-多线程带来的问题

摘要

多线程带来的问题 线程安全 当多线程访问一个对象时,若无需考虑下面几点(也就是无需做任何额外考虑,就想单线程那样),调用该对象的行 …

post_img

06-线程相关属性

摘要

线程相关属性 线程ID 每个线程都有唯一的ID,线程ID是没有setter方法的,也就是不能修改的,这是因为ID是给JVM使用的 …

post_img

05-线程相关方法

摘要

线程相关方法 线程等待与唤醒机制 注意事项 线程等待和唤醒的方法必须在有synchronized保护的代码块或方法中执行,并且是使 …

post_img

04-线程的生命周期

摘要

线程的生命周期 Java线程状态 Java中线程共有以下六种状态: New:线程新建状态,创建但还未启动的新线程的状态 Runna …

post_img

03-停止线程

摘要

停止线程 停止线程的原则 使用interrupt()来通知线程进行中断,而不是强制停止,在Java中若想停止线程最多就是告诉该线程 …

post_img

02-启动线程

摘要

启动线程 run方法与start方法比较 直接调用run()方法并未开启新的线程,而是在主线程中被当作一个普通的方法进行调用 调用 …

post_img

01-实现线程

摘要

实现线程 从Java官方文档中可以查看到,无论是JDK8还是JDK11中对线程的实现方式只有两种,一种是继承Thread类重写ru …