随笔分类 - JAVA
Thread.sleep() 和 Thread.yield() 区别
摘要:1. Thread.yield(): api中解释: 暂停当前正在执行的线程对象,并执行其他线程。 注意:这里的其他也包含当前线程,所以会出现以下结果。 输出结果: 1122 或者 1212 2. Thread.sleep(long millis): 解释:使当前线程暂停millis所指定的毫秒,转
阅读全文
LockSupport的park和unpark的基本使用,以及对线程中断的响应性
摘要:/** * Disables the current thread for thread scheduling purposes unless the * permit is available. * * <p>If the permit is available then it is consum
阅读全文
[解决]--java_out: User.proto: User.proto: Cannot generate Java output because the file 's
摘要:在使用 protocol buffer 的时候,用.proto文件生成代码文件时报错 使用命令 protoc.exe --java_out c:\logs\ User.proto User.proto文件内容格式如下 --java_out: User.proto: User.proto: Canno
阅读全文
Java NIO Tutorial
摘要:http://tutorials.jenkov.com/java-nio/index.html
阅读全文
深入浅出 MappedByteBuffer
摘要:前言 java io操作中通常采用BufferedReader,BufferedInputStream等带缓冲的IO类处理大文件,不过java nio中引入了一种基于MappedByteBuffer操作大文件的方式,其读写性能极高,本文会介绍其性能如此高的内部实现原理。 内存管理 在深入Mapped
阅读全文
Knowing how all your components work together: distributed tracing with Zipkin
摘要:转自: http://aredko.blogspot.com/2014/02/knowing-how-all-your-components-work.html In today's post we will try to cover very interesting and important t
阅读全文
Java Annotation Processors
摘要:Table Of Contents 1. Introduction In this part of the tutorial we are going to demystify the magic of annotation processing, which is often used to in
阅读全文
深度剖析JDK动态代理机制
摘要:摘要 相比于静态代理,动态代理避免了开发人员编写各个繁锁的静态代理类,只需简单地指定一组接口及目标类对象就能动态的获得代理对象。 代理模式 使用代理模式必须要让代理类和目标类实现相同的接口,客户端通过代理类来调用目标方法,代理类会将所有的方法调用分派到目标对象上反射执行,还可以在分派过程中添加"前置
阅读全文
Java 代理模式(二) Java中的动态代理
摘要:动态代理类 Java动态代理类位于java.lang.reflect包下,一般主要涉及到以下两个类: 1.Interface InvocationHandler 该接口中仅定义了一个方法: Object invoke(Object proxy, Method method, Object[] arg
阅读全文
Java 代理模式(一) 静态代理
摘要:转自: http://www.cnblogs.com/mengdd/archive/2013/01/30/2883468.html 代理模式 代理模式的作用是:为其他对象提供一种代理以控制对这个对象的访问。 在某些情况下,一个客户不想或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起
阅读全文
CGLib动态代理原理及实现
摘要:JDK实现动态代理需要实现类通过接口定义业务方法,对于没有接口的类,如何实现动态代理呢,这就需要CGLib了。CGLib采用了非常底层的字节码技 术,其原理是通过字节码技术为一个类创建子类,并在子类中采用方法拦截的技术拦截所有父类方法的调用,顺势织入横切逻辑。JDK动态代理与CGLib动态 代理均是
阅读全文
Understanding sun.misc.Unsafe
摘要:转自: https://dzone.com/articles/understanding-sunmiscunsafe The biggest competitor to the Java virtual machine might be Microsoft's CLR that hosts lang
阅读全文
Finding Memory Leaks with SAP Memory Analyzer
摘要:Introduction There is a common understanding that a single snapshot of the java heap is not enough for finding a memory leak. The usual approach is to
阅读全文
Short jhat tutorial: diagnosing OutOfMemoryError by example
摘要:转自: http://petermodzelewski.blogspot.com/2013/06/short-jhat-tutorial-diagnosing.html jhat这个工具经过使用, 发现非常不好用, 分析稍微比较大一点的dumo文件就会非常慢, 而且占用内存太大, 所以建议用mat.
阅读全文
Memory Analysis Part 1 – Obtaining a Java Heapdump
摘要:转自: https://blog.codecentric.de/en/2008/07/memory-analysis-part-1-obtaining-a-java-heapdump/ For troubleshooting Java memory leaks and high memory usa
阅读全文
jstack和线程dump分析
摘要:一:jstack jstack命令的语法格式: jstack <pid>。可以用jps查看java进程id。这里要注意的是:1. 不同的 JAVA虚机的线程 DUMP的创建方法和文件格式是不一样的,不同的 JVM版本, dump信息也有差别。本文中,只以 SUN的 hotspot JVM 5.0_0
阅读全文
Why won't JRockit find my classes
摘要:This is the second post by Mattis, diving deep into JVM specifics. NoClassDefFoundErrors are a drag. The classloader mechanism in the Java specificati
阅读全文
Class Loading Deadlocks
摘要:By tomas.nilsson on Feb 28, 2010 Mattis keeps going strong, in this installment you get to learn everything you never you knew you may need to know ab
阅读全文
Find out your Java heap memory size
摘要:In this article, we will show you how to use the -XX:+PrintFlagsFinal to find out your heap size detail. In Java, the default and maximum heap size ar
阅读全文
Java Runtime.exec()的使用
摘要:Sun的doc里其实说明还有其他的用法: 那个dir就是调用的程序的工作目录,这句其实还是很有用的。 Windows下调用程序 Process proc =Runtime.getRuntime().exec("exefile"); Process proc =Runtime.getRuntime()
阅读全文