14.同步方法和同步代码块的区别是什么? 在Java语言中,每一个对象有一把锁。线程可以使用synchronized关键字来获取对象上的锁。synchronized关键字可应用在方法级别(粗粒度锁)或者是代码块级别(细粒度锁)。 15.在监视器(Monitor)内部,是如何做线程同步的?程序应该做哪 ...
分类:
其他好文 时间:
2017-06-04 21:16:12
阅读次数:
196
/** * 一个简单的死锁类 * 当DeadLock类的对象flag==1时(td1),先锁定o1,睡眠500毫秒 * 而td1在睡眠的时候另一个flag==0的对象(td2)线程启动,先锁定o2,睡眠500毫秒 * td1睡眠结束后需要锁定o2才能继续执行,而此时o2已被td2锁定; * td2睡 ...
分类:
其他好文 时间:
2017-05-30 16:04:33
阅读次数:
223
在2008之前我们分析死锁须要用profiler trace或者trace flag 1222,1204.在2008中引入了一个新功能:Extended Events(扩展事件)。能够监控Deadlock事件,而且性能更好。 并且2008自带了一个默认扩展事件会话system_health,假设你执 ...
分类:
其他好文 时间:
2017-05-27 10:40:02
阅读次数:
172
关于管道 Channel 管道分类 无缓冲的 与 有缓冲 channel 有着重大差别,那就是一个是同步的(阻塞的) 一个是非同步的(非阻塞的)。 比如: 例如:c1 <- 1 无缓冲: 不仅仅是向 c1 通道放 1,而是一直要等有别的协程 <-c1 接手了这个参数,那么 c1 <- 1 才会继续下 ...
分类:
其他好文 时间:
2017-05-26 13:15:19
阅读次数:
155
表分区的一个好处:能够避免Deadlock,分区之间是相互独立的,对一个分区加X锁,不会对其他分区产生contention。在项目中,有如下PartitionFunction和PartitionSchemeCREATEPARTITIONFUNCTION[funcPartition_int_DataSourceID](int)
ASRANGELEFTFORVALUES(1,2,3)CREATEPARTITIO..
分类:
其他好文 时间:
2017-05-23 21:48:42
阅读次数:
127
DEADLOCKS Both processes are blocked and will remain so forever. This situation is called a deadlock. 6.1 RESOURCES 6.1.1 Preemptable and Nonpreemptab ...
分类:
其他好文 时间:
2017-05-22 09:23:40
阅读次数:
274
伪代码模型 Redis为单进程单线程模式,采用队列模式将并发访问变为串行访问。Redis本身没有锁的概念,Redis对于多个客户端连接并不存在竞争,但是在Jedis客户端对Redis进行并发访问时会发生连接超时、数据转换错误、阻塞、客户端关闭连接等问题,这些问题均是由于客户端连接混乱造成。对此有2种 ...
分类:
其他好文 时间:
2017-05-21 18:49:12
阅读次数:
265
锁的基本原理 为了保证数据的完事性和一致性,数据库系统采用锁来实现事务的隔离性。各种大型数据库采用的锁基本理论是一致的,但在具体实现上各有差别。 从并发事务锁定的关系上看,可以分为共享锁定和独占锁定。从锁定的对象不同,一般可以分为表锁定和行锁定。 锁 共享锁用于读取数据操作,它是非独占的,允许其他事 ...
分类:
数据库 时间:
2017-05-12 00:02:58
阅读次数:
255
SET STATISTICS PROFILE ON 显示query的执行过程 Troubleshooting Deadlocks Understanding Locking in SQL Server 对锁的初步认识 深入的探讨锁机制 3种跟踪死锁的方法总结 Deadlock Troubleshoo ...
分类:
其他好文 时间:
2017-04-18 18:36:48
阅读次数:
158
死锁(deadlock) 是指两个或两个以上的进程在执行过程中,因争夺资源而造成的一种互相等待的现象,若无外力作用,它们都将无法推进下去。此时称系统处于死锁状态或系统产生了死锁,这些永远在互相等待的进程称为死锁进程。 虽然进程在运行过程中,可能发生死锁,但死锁的发生也必须具备一定的条件,死锁的发生必 ...
分类:
系统相关 时间:
2017-04-16 13:08:02
阅读次数:
285