![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
代码实例
weixin_45582907
这个作者很懒,什么都没留下…
展开
-
SingleDemo
package com.sinoservices.chainwork.srm.basicdata.service.impl; public class SingleDemo { public static SingleDemo instance = null; public SingleDemo(){ System.out.println(Thread.currentThread().getNam...原创 2019-12-12 09:07:33 · 102 阅读 · 0 评论 -
MyThreadPoolDemo线程池代码实例
package com.sinoservices.chainwork.srm.basicdata.service.impl; import java.util.concurrent.Executor; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.uti...原创 2019-12-07 09:44:42 · 176 阅读 · 0 评论 -
volatile禁止指令重拍案例演示
package com.sinoservices.chainwork.srm.basicdata.manager.impl; public class ReSortSeqDemo { int a = 0; boolean flag = false; public void method1(){ a = 1; flag = true; } public void method2(){ a = a+5...原创 2019-12-05 09:12:50 · 164 阅读 · 0 评论 -
MatespaceOOMTest
package com.sinoservices.chainwork.srm.basicdata.manager.impl; /* JVM 参数 -XX:MatespaceSize=8m -XX:MaxMatespaceSize=8m java 8及以后的版本用Matespace来替代永久代 Matespace是方法区在HotSpot中的实现。它与持久代最大的区别在于:Matespace并不在虚拟...原创 2019-12-04 20:34:28 · 173 阅读 · 0 评论 -
DirectBufferMemoryDemo
package test1; /* 配置参数 -Xms10m -Xmx10m -XX:+PrintGCDetial -XX:MaxDirctMemorySize=5m 故障现象: Exception in Thread main:java.lang.OutOfMemoryError:Direct Buffer Memoru 导致原因 写NIO程序经常使用ByteBuffer来读取或者写入数据,这是...原创 2019-11-29 23:11:20 · 221 阅读 · 0 评论 -
ProAndConBlockingQueueDemo
package com.sinoservices.chainwork.srm.basicdata.service.impl; import java.util.concurrent.ArrayBlockingQueue; import java.util.concurrent.BlockingQueue; import java.util.concurrent.TimeUnit; import j...原创 2019-11-29 17:31:45 · 107 阅读 · 0 评论 -
VolatileNotAtomicDemo
package test1; /* 1.验证volatile的可见性 1.1 假如int number = 0 ,number变量之前根本没有添加volatile关键字修饰,没有可见性 1.2 添加了volatile 可以解决可见性问题 2.验证volatile不保证原子性 2.1 原子性指的是什么意思? 不可分割,完整性,也即某个线程正在做某个业务时,中间不可以被加塞或者被分割。需要整体完整,要...原创 2019-11-27 22:51:33 · 92 阅读 · 0 评论 -
GcOverHeadLimitDemo
package test1; /* JVM参数配置演示 -Xms10m -Xmx10m -XX:+PrintGCDetials -XX:+MaxDirectMemorySize=5m GC回收时间过长时,会抛出OutOfMemoryError,过长的定义是:超过了98%的时间用来做GC并且回收了不到2%的堆内存 连续多次GC回收了不到2%的堆内存的极端情况下才会抛出。假如不抛出GC OverHea...原创 2019-11-27 22:06:54 · 102 阅读 · 0 评论 -
SynchronizedAndReentranLockDemo
package test1; import java.util.concurrent.locks.Condition; import java.util.concurrent.locks.Lock; import java.util.concurrent.locks.ReentrantLock; class Resource{ int number = 1;//A 1 B 2 C 3 privat...原创 2019-11-27 21:24:56 · 91 阅读 · 0 评论 -
VolatileDemo
package com.sinoservices.chainwork.srm.tender.service.impl; import java.util.concurrent.TimeUnit; class Mydata{ volatile int number = 0; public void addTo60() { this.number = 60; } } public class Vola...原创 2019-11-27 10:32:13 · 98 阅读 · 0 评论 -
JavaHeapSpaceDemo1
package com.sinoservices.chainwork.srm.tender.service.impl; import java.util.Random; public class JavaHeapSpaceDemo1 { public static void main(String[] args) { Byte [] bytes = new Byte[80 * 1024 * 204...原创 2019-11-27 10:20:13 · 88 阅读 · 0 评论 -
JavaHeapSpaceDemo1
package com.sinoservices.chainwork.srm.tender.service.impl; import java.util.Random; public class JavaHeapSpaceDemo { public static void main(String[] args) { String str = “str”; while (true) { str +=...原创 2019-11-27 10:18:20 · 97 阅读 · 0 评论 -
StackOverFlowErrorDemo
package com.sinoservices.chainwork.srm.tender.service.impl; public class StackOverFlowErrorDemo { public static void main(String[] args) { while (true) { stackOverFlow(); } } private static void stack...原创 2019-11-27 10:11:53 · 112 阅读 · 0 评论