
Java多线程基础
Java多线程相关的基础知识
阿莫西邻
这个作者很懒,什么都没留下…
展开
-
线程池原理
目录 目的 线程次原理-概念 线程池API-接口定义和实现类 线程池API-方法定义 线程池的基本使用 线程池API-Executors工具类 线程池原理-任务execute过程 线程池创建源码/参数 线程池执行源码 线程池运用 线程数量 目的 提高性能,减少内存消耗。 线程池原理-概念 线程池API-接口定义和实现类 常用:ThreadPoolExecutor,标准实现。 线程池API...原创 2019-12-26 14:16:25 · 131 阅读 · 0 评论 -
线程封闭
目录 概念 ThreadLocal 局部变量 概念 ThreadLocal 不同的线程操作此变量会拿到不同的结果,跨方法使用没有问题,只要在同一个线程中即可。 局部变量 栈封闭:局部变量的固有属性之一就是封闭在线程中,他们位于执行线程的栈中,其它线程无法访问这个栈。 ...原创 2019-12-26 13:38:42 · 84 阅读 · 0 评论 -
线程通信
目的 线程通信的目的是为了实现线程之间的数据交互和相互协作。 通信的方式 主要以JDK-API为主 文件共享/网络共享 变量共享 线程协作-JDK API API-被弃用的suspend和resume 作用:调用suspend挂起目标线程,通过resume可以恢复线程执行。 弃用原因:容易写出死锁代码。 suspend挂起后不会释放锁,会导致死锁。 suspend要比resume后执行,...原创 2019-12-26 13:09:15 · 174 阅读 · 0 评论 -
CPU缓存和内存屏障
目录 目的 CPU性能优化手段-缓存 多级缓存说明 缓存同步协议 cpu性能优化手段-运行时指令重排 存在的问题 内存屏障 目的 主要是了解CPU在程序性能优化上所做的努力。 CPU性能优化手段-缓存 目的:减少程序运行的时间开销,从而提高性能。 多级缓存说明 多级缓存的概念 缓存同步协议 最终写入主内存以哪个CPU为准? cpu性能优化手段-运行时指令重排 目的:将执行快的代码优先执行...原创 2019-12-26 12:36:38 · 121 阅读 · 0 评论 -
线程中止
目录 不正确的线程中止方式-stop 正确的中止线程方式-interrupt 正确的中止线程方式-标志位 不正确的线程中止方式 thread.stop(); 无法保证数据的原子性,会强行中断线程,无法保证线程安全,导致数据不一致,jdk标记为已弃用的状态。 在线程睡眠期间,使用stop方式中止线程后,会导致i自增成功,j自增失败。 正确的中止线程方式 thread.interrupt 保证...原创 2019-12-26 12:11:08 · 107 阅读 · 0 评论 -
线程状态
目录 线程状态 线程状态的切换 线程的状态 线程状态切换原创 2019-12-26 10:14:42 · 119 阅读 · 0 评论 -
java程序运行原理
目录 整体预览 JVM运行时数据区 编译加载 创建线程执行 JVM执行方法,方法调用原理 整体预览 编写源代码 .java文件。 编译—》.java–>.class. 加载类信息:将class文件内容加载到JVM运行时区。 执行代码。 JVM运行时数据区 方法区:JVM用来存储加载的类信息、常量、静态变量、编译后的代码等数据。 堆内存:JVM启动时创建,存放对象的实例。可细分为:...原创 2019-12-26 10:04:07 · 116 阅读 · 0 评论