`
liuInsect
  • 浏览: 131974 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论
文章列表
为了更好的提供文章,我已经将博客迁移到了自建的博客网站上,我将更多的从源码分析的角度入手,为大家带来更多的深度文章,请大家继续关注我~!  博客地址:www.liuinsect.com _______________________________________________________________________________  站在使用者的角度,future是一个经常在多线程环境下使用的Runnable,使用它的好处有两个: 1. 线程执行结果带有返回值 2. 提供了一个线程超时的功能,超过超时时间抛出异常后返回。   那,怎么实现future这种超时控制呢 ...
为了更好的提供文章,我已经将博客迁移到了自建的博客网站上,我将更多的从源码分析的角度入手,为大家带来更多的深度文章,请大家继续关注我~!  博客地址:www.liuinsect.com
本文描述了在某种特殊场景下JDK编译器对 Java 基本类型的封包操作。 其原理非常简单,但是现象却非常 非常的迷惑人。可以让我们从另外一个角度看待jdk对基本类型的封包。   本文代码的原意是想找到一种当future超时后,可以尽量快的终止掉还在运行的future(事实上,future超时后(在主线程抛出超时异常后),future线程并不会停止,直到它运行结束,自然消亡。)   先上代码:   主函数:   package thread.InteruptTest; import java.io.IOException; import java.util.conc ...
本例子演示了另外一种修改变量值的方式,希望可以让读者从另外一个角度看待变量,欢迎大家讨论。 请看例子   package concurrentTest; import java.lang.reflect.Field; import sun.misc.Unsafe; /** * jdk 提供了一个unsafe类来直接通过 内存地址来操作变量 * 该例子演示了 另外一种变换 变量值的方式 * @Package concurrentTest * @author liukunyang * @date 2013-12-11 下午02:36:23 * @vers ...
第一步: 找到apache的httpd.conf 文件,加入下面这段话:   #设置Apache与Tomcat之间的连接,让Apache将请求转发到Tomcat中去: LoadModule jk_module modules/mod_jk.so   #设置worker队列,这个文件中实现负载均衡的配置 JkWorkersFile conf/workers.properties     #设置什么请求交由负载均衡控制器处理 JkMountFile conf/uriworkermap.properties   #指定tomcat监听配置文件地址,也记录了它的错误信息。 JkLogFi ...
这篇文章为自己动手后的操作记录,以下是我这次主从配置的过程,请大家多多指教: 环境:        1. 两台windows7笔记本。      2. 安装数据库版本,使用 select version();            看到主库上是:           mysql>      select version(); +-------------------------+ | version()               | +-------------------------+ | 5.0.45-community-nt-log | +----- ...
为了更好的提供文章,我已经将博客迁移到了自建的博客网站上,我将更多的从源码分析的角度入手,为大家带来更多的深度文章,请大家继续关注我~!  博客地址:www.liuinsect.com   _______________________________________________________________________________   MultiThreadedHttpConnectionManager 是HTTP Client中用来复用连接的连接管理类,可以通过       MultiThreadedHttpConnectionManager n = ...
   直接copy 代码后运行 看效果: package Thread; public class WaitAndNotifyTest { public synchronized void wantTowait(int i ){ try { System.out.println( i + " ready to wait "); this.wait(); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printSta ...
为了更好的提供文章,我已经将博客迁移到了自建的博客网站上,我将更多的从源码分析的角度入手,为大家带来更多的深度文章,请大家继续关注我~!  博客地址:www.liuinsect.com _______________________________________________________________________________   这篇文章,主要解决一下疑惑: 1. ThreadLocal.ThreadLocalMap中提到的弱引用,弱引用究竟会不会被回收? 2. 弱引用什么情况下回收? 3. JAVA的ThreadLocal和在什么情况下会内存泄 ...
 这两天在做使用CXF框架的时候遇到了一个传输复杂对象的问题,问题如下:   背景:  首先,我定义一个JavaBean WebServiceResult 里面有这么几个属性: private boolean success =false; private Map<String,List<Topic>> result = new HashMap<String,List<Topic>>(); private ArrayList<Topic> topics ; private transient String r ...
  前段时间某功能在测试机器上出现乱码,情况如下:   现象:           调试搜索功能时,通过doGet方法提交到后台的中文参数在本地和开发测试机器上为乱码(Action层),在测试人员测试机器上为中文.(Action层) 推断: 怀疑是两台机器(开发人员测试机器,测试人员测试机器)环境不同: 1. 先从tomcat查起,在他们各自的tomcat的配置文件server.xml中的Connector标签,有句指定URL编码的配置:URIEncoding="UTF-8" ,     开发测试机器上没有配置(默认是IDO-8859-1),测试人 ...
比较有意思的一段代码,可以先运行看效果再将注释取消后看运行效果,上代码 /** * * 每个对象实例化的时候,都要路过static方法 * 但是编译器会保证static快的执行是原子的,即便是多线程过来也要一个个执行 * 只不过,只有第一个实例动作的时候static快内的代码被执行 * 其他实例只是“路过” * 即,每个实例都要走到static块,但是static块只会执行一次, * 是通过调用该类的 client方法导致的,该方法只在类被加载的时候JVM调用 * @author liuinsect * */ public class Static ...
  最近在工作中用到了spring的事务管理功能,到项目代码中一看,有声明式的,有编程式的,比较混淆,所以对spring的事务管理做了一个简单的分析,主要回答自己一下几个问题:      1.     声明式事务怎么处理事务?      2.     ...
import java.io.BufferedOutputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; public class IOTest { /** * @param args * @throws IOException */ public static void main(String[] args) thr ...
本文介绍的是使用JDK自带的RMI包,实现简单的远程方法调用功能,虽有众多局限,在生产环境上未必能用上,但对于理解原理是非常有好处的,请深刻理解。   说明: 1. 本文使用的是JDK1.6+的版本 2. 文中会使用到rmic功能,这个工具是在本地生成Stub和Skeleton的工具,在JAVA_HOME\bin文件中有自带,     若想使用,请在path环境变量中添加%JAVA_HOME%\bin  目的是将JAVA_HOME\bin下的命令添加到path变量中,     使得rmic命令在dos的任何目录下使用。     先上代码,服务端类: import java.r ...
Global site tag (gtag.js) - Google Analytics