Java
文章平均质量分 57
zhangjianbo1989
1.诚实,工作认真负责<br/>2.忠诚,有高度集体荣誉感<br/>3.有上进心,对技术有强烈的求知欲<br/>4. 执行能力强,能吃苦耐劳,并善于思考,能自行解决难题<br/>5. 缺少霸气,不善于拒绝
展开
-
Java 信号量 Semaphore 介绍
Semaphore当前在多线程环境下被扩放使用,操作系统的信号量是个很重要的概念,在进程控制方面都有应用。Java 并发库 的Semaphore 可以很轻松完成信号量控制,Semaphore可以控制某个资源可被同时访问的个数,通过 acquire() 获取一个许可,如果没有就等待,而 release() 释放一个许可。比如在Windows下可以设置共享文件的最大客户端访问个数。 Semap转载 2014-07-23 18:14:15 · 349 阅读 · 0 评论 -
java泛型的理解
转自 http://hongjiang.info/java-generics/ 原文是好几年前在公司邮件列表里发的,现在看写的很啰嗦,不管怎样,希望对新手有用。 pdf文档可以在:http://www.slideshare.net/hongjiang/ss-13586111 不能翻墙也可以在这里下载:http://vdisk.weibo.com/s/AsZQi 几年前当Ja转载 2015-03-20 14:36:24 · 412 阅读 · 0 评论 -
LinkedHashMap的实现原理(LRU算法)
LRU转载 2015-01-20 14:27:41 · 651 阅读 · 0 评论 -
用LinkedHashMap实现的LRU算法
LRU原创 2015-01-20 14:49:12 · 448 阅读 · 0 评论 -
CPU高速缓存行对齐
CPU的高速缓存一般分为一级缓存和二级缓存,现今更多的CPU更是提供了三级缓存。CPU在运行时首先从一级缓存读取数据,如果读取失败则会从二级缓存读取数据,如果仍然失败则再从内存中存读取数据。而CPU从一级缓存或二级缓存或主内存中最终读取到数据所耗费的时钟周期差距是非常之大的。因此高速缓存的容量和速度直接影响到CPU的工作性能。 一级缓存都内置在CPU内部并与CPU同速运行,可以有效的提高CPU的运转载 2014-09-24 20:12:01 · 674 阅读 · 0 评论 -
Java String类型剖析及其JVM内存分配详解
前提:先了解下什么是声明,什么时候才算是产生了对象实例 其中x并未看到内存分配,变量在使用前必须先声明,再赋值,然后才可以使用。java基础数据类型会用对应的默认值进行初始化 一、首先看看Java虚拟机JVM的内存块及其变量、对象内存空间是怎么存储分配的 1、栈:存放基本数据类型及对象变量的引用,对象本身不存放于栈中而是存放于堆中转载 2014-09-12 09:41:30 · 411 阅读 · 0 评论 -
java 对象的脚本运行
这个Demo 不是简单的 运行 engine.eval( val a);原创 2014-08-11 11:58:43 · 412 阅读 · 0 评论 -
在JAVA中线程到底起到什么作用
这是javaeye上非常经典的关于线程的帖子,写的非常通俗易懂的,适合任何读计算机的同学. 线程同步 我们可以在计算机上运行各种计算机软件程序。每一个运行的程序可能包括多个独立运行的线程(Thread)。 线程(Thread)是一份独立运行的程序,有自己专用的运行栈。线程有可能和其他线程共享一些资源,比如,内存,文件,数据库等。 当多个线程同时读写同一份共享资源的时候,可能会引起冲突。这时转载 2014-08-11 11:12:19 · 360 阅读 · 0 评论 -
高性能RPC over MINA&google protobuf 代码&实例 (一)
最近团队在开发基于移动互联网的项目,又一次涉及到post service,即在服务器集群之间投递消息。是的,又是一个RPC服务。RPC实现方式从笨重的CORBA,SOAP over HTTP,XMPP over TCP,到轻量级的protobuf,scribe和Avro。这里不想比较各自的应用场景(另外后面三种RPC方式极为接近,都是通过提供Object 二进制映射来提高高效的传输),本文的目的转载 2014-08-11 12:28:30 · 396 阅读 · 0 评论 -
高性能RPC over MINA&google protobuf 代码&实例 (二)
高性能RPC over MINA&google protobuf 代码&实例 (二) 博客分类: MINA 高性能通讯 架构 在本系列上篇http://maoyidao.iteye.com/blog/1636923 实现了基于google protobuf的序列化反序列化,现在看看怎么把他们组装到MINA的nio中。本篇主要描述怎么处理断包。 使用转载 2014-08-11 12:27:18 · 288 阅读 · 0 评论 -
一个简单的缓存Demo
一个简单的缓存系统public class CacheData { public Map cache = new HashMap(); private ReadWriteLock readWriteLock = new ReentrantReadWriteLock(); /** * multi-read ,single-write */ pub原创 2014-06-05 10:06:47 · 553 阅读 · 0 评论 -
实现单例的几种方式
方法1:很经典的,也是用的很多的。原创 2014-08-04 17:41:55 · 414 阅读 · 0 评论 -
Byte[] 与 int 之间的互转
网络和Java默认是大端输出,C/C++ 是小端输出。原创 2014-07-29 16:42:54 · 447 阅读 · 0 评论 -
由生产者/消费者问题看JAVA多线程
由生产者/消费者问题看JAVA多线程 分类: java多线程 os2012-09-29 17:56 233人阅读 评论(0) 收藏 举报 java产品list多线程threadclass 转:http://blog.csdn.net/coutcin/article/details/1213834 生产者消费者问题是研究多线程程序时绕不开的问题,它的描述是有一块生产者转载 2014-07-23 18:18:54 · 365 阅读 · 0 评论 -
ArrayBlockingQueueDemo
仿写的ArrayBlockingQueue,次记录,留待自己以后查阅。原创 2014-06-05 23:51:47 · 684 阅读 · 0 评论