代码改变世界

随笔分类 -  JNI

让面试官心服口服:Thread.sleep、synchronized、LockSupport.park的线程阻塞有何区别?

2020-11-22 18:19 by tera, 3068 阅读, 收藏,
摘要: 前言 在日常编码的过程中,我们经常会使用Thread.sleep、LockSupport.park()主动阻塞线程,或者使用synchronized和Object.wait来阻塞线程保证并发安全。此时我们会发现,对于Thread.sleep和Object.wait方法是会抛出InterruptedE 阅读全文

JNI-从jvm源码分析Thread.interrupt的系统级别线程打断原理

2020-11-15 14:50 by tera, 1425 阅读, 收藏,
摘要: 前言 在java编程中,我们经常会调用Thread.sleep()方法使得线程停止运行一段时间,而Thread类中也提供了interrupt方法供我们去主动打断一个线程。那么线程挂起和打断的本质究竟是什么,本文就此问题作一个探究。 本文主要分为以下几个部分 1.interrupt的使用特点 2.jv 阅读全文

JNI-从jvm源码分析Thread.start的调用与Thread.run的回调

2020-11-06 17:23 by tera, 2342 阅读, 收藏,
摘要: 前言 在java编程中,线程Thread是我们经常使用的类。那么创建一个Thread的本质究竟是什么,本文就此问题作一个探索。 内容主要分为以下几个部分 1.JNI机制的使用 2.Thread创建线程的底层调用分析 3.系统线程的使用 4.Thread中run方法的回调分析 5.实现一个jni的回调 阅读全文