自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 资源 (11)
  • 收藏
  • 关注

转载 位运算的妙用

先说一下位运算的简单用法1. 按位与 &用途:清零,取一个数中的某些指定位,保留一个数中的某些指定位2. 按位或 |用途:将一个数的某些位指定为13. 按位异或 ^用途:交换两个数a=a^b; b=a^b; a=a^b让我们看看这三条语句执行后的结果:第一条a=a^b,所以第二条b=a^b=(a^b)^b=a^(b^b)=a^

2015-08-31 15:23:20 480

原创 利用观察者模式来获取线程中的数据或者回调函数

首先//抽象主题角色,watched:被观察public interface Watched{ public void addWatcher(Watcher watcher); public void removeWatcher(Watcher watcher); public void notifyWatchers(Watcher watcher,String s

2015-08-18 22:30:32 2021

转载 JAVA wait(), notify(),sleep详解

在CSDN开了博客后,一直也没在上面发布过文章,直到前一段时间与一位前辈的对话,才发现技术博客的重要,立志要把CSDN的博客建好。但一直没有找到好的开篇的主题,今天再看JAVA线程互斥、同步的时候又有了新的体会,就以他作为开篇吧。    在JAVA中,是没有类似于PV操作、进程互斥等相关的方法的。JAVA的进程同步是通过synchronized()来实现的,需要说明的是,JAVA的sync

2015-08-14 11:53:37 494

转载 java线程:大总结

Java线程:大总结 Java线程是Java语言中一个非常重要的部分,Java5之前,多线程的语言支持还是比较弱的,内容也较少,写一个复杂的多线程程序是相当有挑战性的。 在Java5以后,Java对多线程做了很多扩展,扩展部分称之为并发包。这部分内容大大增强了Java多线程编程的能力,通过使用Java5线程新特征的API,可以很容易的做出复杂的多线程程序。与其他语言

2015-08-13 11:43:55 500

转载 Java线程:新特征-有返回值的线程

Java线程:新特征-有返回值的线程     在Java5之前,线程是没有返回值的,常常为了“有”返回值,破费周折,而且代码很不好写。或者干脆绕过这道坎,走别的路了。    现在Java终于有可返回值的任务(也可以叫做线程)了。    可返回值的任务必须实现Callable接口,类似的,无返回值的任务必须Runnable接口。    执行Callable任务

2015-08-13 11:40:59 453

转载 java线程的同步互斥和通讯

一、同步和锁定1、锁的原理Java中每个对象都有一个内置锁。当程序运行到非静态的synchronized同步方法上时,自动获得与正在执行代码类的当前实例(this实例)有关的锁。获得一个对象的锁也称为获取锁、锁定对象、在对象上锁定或在对象上同步。当程序运行到synchronized同步方法或代码块时才该对象锁才起作用。

2015-08-13 11:37:05 436

转载 利用object.wait()和实现生产者和消费者模式

其实生产者和消费者模式概念很简单,就是生产者将生产出来的产品放在仓库里,然后消费者依次从仓库里取产品消费。归到程序里,这里的仓库就可以用数组,队列或栈来表示。掌握以下两点后,该模式的实现将不成问题。1. 首先要明白生产者和消费者之间的并发对象就是存放产品的队列,这样才能把并发方法提炼出来。2. 其次要掌握object.wait()和object.notifyAll()这两个

2015-08-13 11:36:07 447

转载 java并发编程--AbstractQueuedSynchronizer加锁和解锁分析(二)

在java.util.concurrent.locks包中有很多Lock的实现类,常用的有ReentrantLock、ReadWriteLock(实现类ReentrantReadWriteLock),其实现都依赖java.util.concurrent.AbstractQueuedSynchronizer类,实现思路都大同小异,因此我们以ReentrantLock作为讲解切入点。1. Re

2015-08-13 11:32:58 871

转载 java并发编程--AbstractQueuedSynchronizer公平锁和非公平锁分析(三)

juc包中,aqs实现的公平锁和非公平锁的最主要的区别是:非公平锁中,那些尝试获取锁且尚未进入等待队列的线程会和等待队列head结点的线程发生竞争。公平锁中,在获取锁时,增加了isFirst(current)判断,当且仅当,等待队列为空或当前线程是等待队列的头结点时,才可尝试获取锁。  1.1 NonfairSync.lock() Java代码  

2015-08-13 11:31:55 970

转载 java并发编程--AbstractQueuedSynchronizer条件锁分析(四)

前一篇J.U.C的锁的获取与释放的过程,这个过程主要通过在A.Q.S中维持一个等待队列来实现,其中我们也提到了,在A.Q.S中除了一个等待队列之外,还有多个Condition队列(Condition队列的多少取决于ConditionObject对象个数),在了解Condition队列之前,先来看一下Condition是怎么回事:The synchronizer framework pr

2015-08-13 11:31:09 624

转载 java并发编程--AbstractQueuedSynchronizer的lock()和lockInterruptibly()方法分析(五)

lock 与 lockInterruptibly比较区别在于:lock 优先考虑获取锁,待获取锁成功后,才响应中断。lockInterruptibly 优先考虑响应中断,而不是响应锁的普通获取或重入获取。 详细区别:ReentrantLock.lockInterruptibly允许在等待时由其它线程调用等待线程的Thread.interrupt方法来中断等待

2015-08-13 11:30:19 499

转载 java并发编程--AbstractQueuedSynchronizer的tryLock()方法分析(六)

tryLock()仅尝试一次获取锁,不管成功与否,都将返回结果。 Java代码  public boolean tryLock()仅在调用时锁未被另一个线程保持的情况下,才获取该锁。       如果该锁没有被另一个线程保持,并且立即返回 true 值,则将锁的保持计数设置为 1。即使已将此锁设置为使用公平排序策略,但是调用 tryLock() 仍将 立即获

2015-08-13 11:28:36 419

转载 java并发编程--ThreadLocal的用法和分析

ThreadLocal这个类,理解起来比较简单,但是使用时,还是需要一些技巧的,简单介绍如下: 例子1:threadLocal变量一般用法 Java代码  package concurrent.thread;    /**  * 技巧:  *      1.在当前线程里执行threadLocal.set(value) 相当于 cu

2015-08-13 11:27:45 396

转载 线程池--jetty中QueuedThreadPool分析(一)

jetty版本:jetty-6.1.261.由于jetty中的许多组件都实现了LifeCycle接口,先了解下该接口的定义: Java代码  package org.mortbay.component;    import java.util.EventListener;    public interface LifeCycle  

2015-08-13 11:26:29 1422

dubbo-admin jdk1.8

dubbo-admin jdk1.8可以使用的直接部署

2016-08-28

Bootstrap-中文-API

Bootstrap-中文-API

2016-08-28

mysql-5.6.28源码

mysql-5.6.28源码

2016-04-27

jedis-2.8.0

jedis-2.8.0,java版的架包

2015-12-24

redis-3.0.5.tar.gz

redis-3.0.5.tar.gz,redis集群的源码

2015-12-24

apache2.4.17版本文件服务器所使用的架包

我将apr-1.5.2.tar.gz,apr-util-1.5.4.tar.gz,httpd-2.4.17.tar.gz,pcre-8.12.tar.gz打包放到了一起,这样就省得下载了

2015-11-09

commons-net-3.0.1.jar

ftp上传和下载,commons-net-3.0.1.jar

2015-11-09

jsch-0.1.51.jar

sftp上传和下载工具类, jsch-0.1.51.jar非常方便

2015-11-09

C转java工具

可以把大部分的C语言语法转成JAVA语法,基本可用,目前项目已经开始使用

2015-09-07

pcre-8.12.tar.gz

pcre-8.12.tar.gz

2015-06-04

html2image-0.9

html2image-0.9,html代码生成图片

2015-04-17

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除