分布式锁在分布式应用当中是要经常用到的,主要是解决分布式资源访问冲突的问题。 一开始考虑采用ReentrantLock来实现,但是实际上去实现的时候,是有问题的,ReentrantLock的lock和unlock要求必须是在同一线程进行,而分布式应用中,lock和unlock是两次不相关的请求,因此肯定不是同一线程,因此导致无法使用ReentrantLock。 接下来就考虑采用自己做个状态来进行...
分类:
其他好文 时间:
2015-06-05 00:48:01
阅读次数:
126
Application是应用全局对象,被全体共享。无论通过哪个页面操作Application,另一个页面都可以读取Application信息。由于Application是共享的,操作之前先Lock,操作完成后UnLock。在一个页面设置数据:Application.Lock(); Applicati...
分类:
移动开发 时间:
2015-06-04 22:22:33
阅读次数:
229
原子性(Atomicity):由Java内存模型来直接保证的原子性变量操作包括read、load、assign、use、store和write,我们大致可以认为基本类型的访问读写是具备原子性的。如果应用场景还需要一个更大范围的原子性保证,Java内存模型还提供了lock和unlock操作来满足这种需...
分类:
其他好文 时间:
2015-06-02 14:54:28
阅读次数:
136
代码示例: Lock lock = new ReentrantLock();
lock.lock();
try { // update object state
} finally { lock.unlock();
}
相比synchronized的优势
1.具有更好的并发性能,激烈争用情况下更佳的...
分类:
其他好文 时间:
2015-06-01 18:42:28
阅读次数:
169
早就听说lock tables和unlock tables这两个命令,从字面也大体知道,前者的作用是锁定表,后者的作用是解除锁定。但是具体如何用,怎么用,不太清楚。今天详细研究了下,总算搞明白了2者的用法。lock tables 命令是为当前线程锁定表.这里有2种类型的锁定,一种是读锁定,用命令 l...
分类:
数据库 时间:
2015-05-31 22:54:37
阅读次数:
233
下载OS X Mavericks 10.9 Retail VMware Image安装vmware10.01打开unlock-all-v110,运行install.sh打开vmx。更新系统.安装vmware toosvmware tools for osx:http://softwareupdate...
分类:
其他好文 时间:
2015-05-26 01:34:29
阅读次数:
290
解锁第一种show processlist;找到锁进程,kill id ;第二种mysql>UNLOCK TABLES;锁表锁定数据表,避免在备份过程中,表被更新mysql>LOCK TABLES tbl_name READ;为表增加一个写锁定:mysql>LOCK TABLES tbl_name ...
分类:
数据库 时间:
2015-05-25 16:09:52
阅读次数:
1515
ecently discovered a neat new way to back up apps on my Android without having to use Titanium Backup, having to unlock bootloader or root the device ...
分类:
移动开发 时间:
2015-05-19 08:49:22
阅读次数:
562
实际效果图:该自定义控件继承FrameLayout, 包含一个ViewPager和横向排列的LinearLayout。后者用于包含显示表示轮播位置的点集,使用ViewPager的好处在于可以灵活的定义item的内容,而不仅仅是图片。为了便于使用,通过自定义属性的方式定义了所须的运行参数:...
分类:
移动开发 时间:
2015-05-16 01:32:11
阅读次数:
242