模拟死锁
来源:互联网 发布:装修vr软件 编辑:程序博客网 时间:2024/06/05 06:32
-- Batch #1
CREATE DATABASE deadlocktest
GO
USE deadlocktest
SET NOCOUNT ON
DBCC TRACEON (1222, -1)
-- 在SQL2005中,增加了一个新的dbcc参数,就是1222,原来在2000下,我们知道,可以执行dbcc
-- traceon(1204,3605,-1)看到所有的死锁信息。SqlServer 2005中,对于1204进行了增强,这就是1222。
GO
IF OBJECT_ID ('t1') IS NOT NULL DROP TABLE t1
IF OBJECT_ID ('p1') IS NOT NULL DROP PROC p1
IF OBJECT_ID ('p2') IS NOT NULL DROP PROC p2
GO
CREATE TABLE t1 (c1 int, c2 int, c3 int, c4 char(5000))
GO
DECLARE @x int
SET @x = 1
WHILE (@x <= 1000) BEGIN
INSERT INTO t1 VALUES (@x*2, @x*2, @x*2, @x*2)
SET @x = @x + 1
END
GO
CREATE CLUSTERED INDEX cidx ON t1 (c1)
CREATE NONCLUSTERED INDEX idx1 ON t1 (c2)
GO
CREATE PROC p1 @p1 int AS SELECT c2, c3 FROM t1 WHERE c2 BETWEEN @p1 AND @p1+1
GO
CREATE PROC p2 @p1 int AS
UPDATE t1 SET c2 = c2+1 WHERE c1 = @p1
UPDATE t1 SET c2 = c2-1 WHERE c1 = @p1
GO
-- Batch #2
USE deadlocktest
SET NOCOUNT ON
WHILE (1=1) EXEC p2 4
GO
-- Batch #3
USE deadlocktest
SET NOCOUNT ON
CREATE TABLE #t1 (c2 int, c3 int)
GO
WHILE (1=1) BEGIN
INSERT INTO #t1 EXEC p1 4
TRUNCATE TABLE #t1
END
GO
0 0
- 模拟死锁
- C#模拟死锁问题
- 临界区死锁模拟.
- 死锁模拟和检测
- java模拟线程死锁
- 模拟线程死锁
- 【重点】模拟多线程死锁
- java 线程死锁模拟
- 多线程死锁的模拟
- 模拟线程死锁
- 简单的死锁模拟
- 线程-模拟死锁问题
- Java 模拟多线程死锁
- java模拟死锁事故现场
- 模拟死锁的产生
- 300.25 模拟死锁
- 模拟死锁 java
- [转]C#模拟死锁问题
- 第八章、bash脚本编程(中)
- 第十六章、Raid及mdadm命令
- 第十八章、Linux网络配置
- 第十七章、LVM
- 控制echo显示字体的颜色和效果
- 模拟死锁
- 手把手带你自制Linux系统之一 准备工作
- 如何将光盘作为yum源
- 手把手带你自制Linux系统之二 简易Linux的制作
- inittab文件格式
- 第十九章、Linux软件管理
- 第二十章、Linux进程管理
- Java基础----继承、多态、抽象、接口
- 产品经理如何培养在产品业务逻辑方面的思考?