为了比较一下ReentrantLock和synchronized的性能,做了一下性能测试:

得出结论:

(1)使用Lock的性能比使用synchronized关键字要提高4~5倍;

(2)使用信号量实现同步的速度大约比synchronized要慢10~20%;

(3)使用at[……]

Read more

10
5月

深入浅出oracle锁

在现代的多用户多任务系统中,必然会出现多个用户同时访问共享的某个对象,这个对象可能是表,行,或者内存结构,为了解决多个用户并发性访问带来的数据的安全性,完整性及一致性问题,必须要有一种机制,来使对这些共享资源的并发性访问串行化,oracle中的锁就可以提供这样的功能,当事务在对某个对象进行操作前,先[……]

Read more

21
4月

Memcached CAS 协议中的版本号

Memcached CAS 协议中的版本号由服务server端产生,同一个server端全局唯一。概念有点类似表的序列号。比如,key1,key2 分别版本号是1,2,key1经过多次写操作,版本号变为了10,然后key2再进行一次写操作,它的版本号会变成10+1=11.而不是2+1=3.

引[……]

Read more

在Java中,如果需要设定代码执行的最长时间,即超时,可以用Java线程池ExecutorService类配合Future接口来实现。 Future接口是Java标准API的一部分,在java.util.concurrent包中。Future接口是Java线程Future模式的实 现,可以来进行异步[……]

Read more