自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(6)
  • 问答 (3)
  • 收藏
  • 关注

原创 死锁

死锁什么是死锁死锁是指当两个或多个线程在并发中互相持有对方所需要的资源且不释放,导致所有线程都无法继续前进,导致程序进入阻塞。最简单的例子就是A线程持有锁1,需要锁2,而B线程持有锁2,需要锁1,这样两个线程都无法前进。死锁的影响当一组Java线程发生死锁时,这些线程就无法再使用了,根据线程完成工作的不同,可能造成程序完全停止,或者性能降低。JVM是无法自动处理,唯一恢复的方...

2019-09-28 15:43:05 120

原创 JMM内存模型

概述JMM,全名为Java Memory Model,即Java内存模型。它是一组规范,需要各个JVM的实现来遵守JMM规范,它屏蔽了各种硬件和操作系统的内存访问差异,以实现Java程序在各个平台下都能达到一致的内存访问效果。不像C/C++那样直接访问物理硬件和操作系统的内存模型,它的主要目的是解决由于多线程通过共享内存进行通信时,存在的本地内存数据不一致、编译器会对代码重排序、处理器会对代码...

2019-09-26 23:16:39 5331 2

原创 Java内部类持有外部类的引用

在Java中内部类的定义与使用一般为成员内部类与匿名内部类,他们的对象都会隐式持有外部类对象的引用,影响外部类对象的回收。通过反编译我们可以来验证这个理论。public class Outer { private String name; class Inner{ private String test; }}Outer是一个普通的类,它有一个...

2019-09-22 17:17:16 1250

原创 简单分析Java线程中断

停止线程原理:使用interrupt来通知,而不是强制。在用户主动取消,或需要服务快速关闭以及运行超时或出错时,需要主动停止线程。Java语言没有一种机制来安全正确的停止线程,但是提供了interrupt来通知另一个线程来停止当前的工作。在Java中,最好的停止线程的方式是使用中断interrupt,但是这仅仅是会通知到被终止的线程“你该停止运行了”,被终止的线程自身拥有决定权(决定是...

2019-09-10 21:36:44 258

原创 实现多线程的正确姿势

实现多线程的方法实现多线程的方法只有2种,这个答案也是oracle在Java官方文档中写明的,见下图。There are two ways to create a new thread of execution.One is to declare a class to be a subclass of Thread.The other way to create a thread i...

2019-09-08 21:42:07 144

原创 微信开发之微信网页授权获取openid

开发前的准备1. 设置授权回调域名关于授权的说明,见下面开发文档的截图重点在设置时不能以http://等协议开头 必须是全域名,不可以是二级域名或是某个文件在这里我使用的微信的测试号注册后点击修改上面红框,设置域名即可。同时我们需要授权回调可以回调到我们自己的电脑,这就需要用到内网穿透,本人使用的是NATAPP,这样就能在开发环境下让微信能访问到我们的域名。...

2019-09-02 17:47:53 2350 3

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除