- 浏览: 71421 次
- 性别:
- 来自: 钓鱼岛
最新评论
-
geminiyellow:
iaimstar 写道和我合租的女生,没事就把整个房子收拾一遍 ...
和女生同居的日子 -
yuanyao:
把她们租到你的房间.
和女生同居的日子 -
cesymm:
不可重复读和幻读其实都是一种情况.
这类情况可以分为三类:
1 ...
spring事务的传播行为与隔离级别 -
BloodyCoder:
vboy1988 写道应届生也面这个?
一直纠结应届生应该具备 ...
阿里巴巴常用面试题 -
vboy1988:
应届生也面这个?
一直纠结应届生应该具备什么技能?
至少有一半 ...
阿里巴巴常用面试题
文章列表
IO读写文件的简单性能比较
- 博客分类:
- IO
public class InputStreamTest {
public static void main(String[] args) {
InputStreamTest inputstream = new InputStreamTest();
FileInputStreamExample example = inputstream.new FileInputStreamExample("D:\\istream\\rechargeLarge.txt", "D:\\istream\\rechargeCopy.txt");
l ...
InputStream
- 博客分类:
- IO
public int read(byte b[], int off, int len) throws IOException {
if (b == null) {
throw new NullPointerException();
} else if (off < 0 || len < 0 || len > b.length - off) {
throw new IndexOutOfBoundsException();
} else if (len == 0) {
return 0;
}
//一次 ...
Source not fount
- 博客分类:
- 工作经验
tomcat server.xml debug=0 如果设置的是1 就会显示source not found
最近想研究一下Tomcat 7.0中是如何使用NIO的处理请求的,于是想下载源码研究,在此过程中出现了一些错误,在此记录,希望能给出现同样错误的同学提供一此参考。
1.Tomcat 7.0的源码地址
http://svn.apache.org/repos/asf/tomcat/tc7.0.x
该地址下包含trunk,branches和tags,我下载的版本是
http://svn.apache.org/repos/asf/tomcat/tc7.0.x/tags/TOMCAT_7_0_27
请自行使用版本管理工具 ...
ConcurrentHashMap
- 博客分类:
- 多线程
/**
modCount记录每一次put,remove,clear,为了避免ABA问题。segment数据结构中,读数据不加锁,写数据加锁,在并发条件下,在size等统计方法中,存在在计算过程中,记录变化的可能。
**/
public boolean isEmpty() {
final Segment<K,V>[] segments = this.segments;
int[] mc = new int[segments.length];
int mcsum = 0; ...
ThreadLocal
- 博客分类:
- 多线程
/**
删除过期的条目
@param 已经知道的有null key位置的位置
@return 已经知道的null key位置的下一个null(可存储位置)位置
**/
private int expungeStaleEntry(int staleSlot) {
Entry[] tab = table;
int len = tab.length;
// 删除过期条目
tab[staleSlot].value = null;
tab[staleSlot] = null;
size--;
// Reh ...
ReentrantReadWriteLock
- 博客分类:
- 多线程
最近研究了一下java中的锁,在看读写锁的代码时,发现很难理解javadoc中关于这个类的解释。于是自己对着代码理解了一下,在此记录,有些地方看得不是太明白,如有错误请纠正。
从不同的视角看锁,锁具有如下特性:
公平性:
公平锁和非公平锁:如果获取锁的顺序是按照请求锁的顺序进行的,那么就是公平锁,否则就是非公平锁
互斥性:
独占锁和共享锁:独占锁只能由一个线程持有,如果独占锁是可重入锁(同一线程可以获取多次),则同一线
程可以获取多次。
共享锁可由多个线程 ...
ArrayDeque
- 博客分类:
- 多线程
/**
将指定元素加入到双向队列的开头,实际效果与想象的不太一致。
例:当容量为16时,第一次调用此方法计算出的数组下标为15,也就是将数据
添加到了数据最大索引的位置。此实现不如链表数据结构中双向队列头尾
相连容易理解。
**/
public void addFirst(E e) {
if (e == null)
throw new NullPointerException();
//计算存储位置有点小技巧,用到了最基础的计算机中数据的二进 ...
/**
在队列尾部插入节点
**/
public boolean offer(E e) {
if (e == null) throw new NullPointerException();
Node<E> n = new Node<E>(e, null);
for (;;) {
Node<E> t = tail;
Node<E> s = t.getNext();
if (t == tail) {
...
LinkedBlockingQueue
- 博客分类:
- 多线程
/**
在队列尾插入指定元素
**/
public void put(E e) throws InterruptedException {
if (e == null) throw new NullPointerException();
int c = -1;
final ReentrantLock putLock = this.putLock;
final AtomicInteger count = this.count;
putLock.lockInterr ...
/**
将结点插入队列,如果队列为空,初始化队列,否则将结点入队列
**/
private Node enq(final Node node) {
for (;;) {
Node t = tail;
if (t == null) { // 尾结点为null时初始化
Node h = new Node();
h.next = node;
node.prev = h;
if (compareAndSetHead(h)) { //1比较并更 ...
常用的Linux命令
- 博客分类:
- linux
记录一下自己在工作中会经常用到的Linux命令,以便用的时候方便查询
retoot 重启
hostname 查看主机名
vi etc/sysconfig/network 修改主机名
passwd 修改密码
自从看了和空姐同居的日子后一直觉得和女生同居的日子很美好,至少可以保持室内干净,时不时的还能吃上一顿好菜。可是现实中的生活远没有那么美好。今年七月份,由于工作原因同住的男生都搬到了市内,正好公司有两个女生在找房子就让她们过来看了下,说实话我租的房子还是很不错的,四室一厅两个卫生间,室内空调、电视、洗衣机等家电一应俱全,她们同意租下了。搬过来的当天就划分了公共卫生区域,说好每周末大家打扫自己的管区。可真住到一起才发现,现在的女孩子可真没什么责任感,自己的屋子倒是收拾得挺干净的,可是公共区域管都没人管,那可真是油瓶子倒了都不带扶的。养猫的养狗的把屋里弄得很脏,扔出自己的屋子就不管了,由于是同事也不好 ...
开发一个项目,发现由于前期考虑不周全,设计做的不好,导致开发过程中遇到很多问题,浪费了不少开发时间。
通过这件事让我想起了为什么应届毕业生不太好找工作,就拿做软件开发来说,国内抓了很年素质教育,但从现 ...
足球整风运动以来最重要的一次比赛,国足又出局了。再回头想想去年3:0对德国,1:0对法国的比赛,以及那之后的一场场胜利,原来都是假象。不知道经历了整风运动之后的虚假繁荣中国足球该走向何方。依稀记得前段时间李玮峰还说中国队没碰到过强硬的对手,只有当事人最了解中国足球,突然想起了那句话“亲眼看到的也不一定是真的”,要用头脑去分析。
做为一个普通的球迷,我并不奢望中国队能拿到冠军,也不奢望他能取得多少场胜利,只想看几场漂亮的比赛。对科威特,11打10,场面上更像是中国队少了一人。面对卡塔尔凶狠逼抢,彻底没了脾气,想控制球可球员没那个能力,看到的是一脚又一脚的传球失误。同样面对卡塔尔凶狠逼抢,乌兹别克斯 ...