最近服务器上经常出现mysql进程占CPU100%的情况,使用show processlist命令后,看到出现了很多状态为LOCKED的sql。使用show status like 'table%'检查Table_locks_immediate和Table_locks_waited,发现Table_...
分类:
其他好文 时间:
2015-01-08 13:08:23
阅读次数:
129
DML锁,也叫做数据锁(data lock),用于保证在多用户操作数据时数据的完整。DML锁防止相互冲突的DML和DDL操作同时发生。
DML锁有行锁(Row Locks,TX)和表锁(Table Locks,TM),不同的DML操作会自动请求对应的锁。
行锁(Row Locks,TX)
行锁也叫TX锁,用于锁表的一行数据。当一个事务对一行数据做INSERT、UPDATE、DELETE、...
分类:
数据库 时间:
2015-01-08 11:24:53
阅读次数:
297
一、概述
结构:
java.lang.Object
java.util.concurrent.locks.ReentrantLock
声明:public class ReentrantLock extends Object implements Lock, Serializable
一个可重入的互斥锁 Lock,它具有与使用 synchronized 方法和语句所访问的隐式监视器锁相...
分类:
编程语言 时间:
2015-01-07 16:54:42
阅读次数:
222
一、概述
该接口位于java.util.concurrent.locks
声明:public interface Condition
Condition 将 Object 监视器方法(wait、notify 和
notifyAll)分解成截然不同的对象,以便通过将这些对象与任意
Lock 实现组合使用,为每个对象提供多个等待 set(wait-set)。其中,Lock 替代了
s...
分类:
编程语言 时间:
2015-01-07 16:46:33
阅读次数:
253
--查询死锁select request_session_id spid,OBJECT_NAME(resource_associated_entity_id) tableName from sys.dm_tran_locks where resource_type='OBJECT'--删除死锁dec...
分类:
数据库 时间:
2014-12-31 17:43:21
阅读次数:
186
简要答案: 1.Lock能完成几乎所有synchronized的功能,并有一些后者不具备的功能,如锁投票、定时锁等候、可中断锁等候等 2.synchronized 是Java 语言层面的,是内置的关键字;Lock 则是JDK 5中出现的一个包,在使用时,synchronized 同步的代码块可以由J...
分类:
编程语言 时间:
2014-12-23 16:57:44
阅读次数:
204
importjava.util.concurrent.locks.Lock;importjava.util.concurrent.locks.ReentrantLock;publicclassSingleton4{ privateSingleton4(){}; privatestaticSingleton4single=null; privatestaticLocklock=newReentrantLock(); publicstaticSingleton4getInstance(){ if(single..
分类:
编程语言 时间:
2014-12-19 19:17:38
阅读次数:
197
http://tutorials.jenkov.com/java-concurrency/read-write-locks.html 翻译 读写锁比LOCK的实现更复杂,想象有一个应用程序能读和写一些资源,但是写没有读多,两个线程读取一些资源并不会出现问题,所以多个线程能读取资源重叠的。如果一个线....
分类:
其他好文 时间:
2014-12-19 15:26:04
阅读次数:
147
Wake Lock是一种锁的机制, 只要有人拿着这个锁,系统就无法进入休眠,
可以被用户态程序和内核获得. 这个锁可以是有超时的或者是没有超时的,
超时的锁会在时间过去以后自动解锁. 如果没有锁了或者超时了, 内核就
会启动休眠的那套机制来进入休眠.
(一).内核维护了:
1).两个链表,active_wake_locks[WAKE_LOCK_TYPE_COUNT]
active...
分类:
移动开发 时间:
2014-12-10 18:03:05
阅读次数:
160
Lock是java.util.concurrent.locks包下的接口,Lock实现提供了比使用synchronized方法和语句可获得的更广泛的锁定操作,它能以更优雅的方式处理线程同步问题,我们拿Java线程(二)中的一个例子简单的实现一下和sychronized一样的效果,代码如下:[jav....
分类:
编程语言 时间:
2014-12-08 17:36:24
阅读次数:
206