-- 实际应用中,如果需要某个存储过程一次只能被一个进程调用执行,可以使用applock的功能.如下DEMO实例.
CREATE proc spapl
as
begin
set nocount on
declare @x bit
select @x=applock_test('public','spapl','Exclusive','Session')
if @x=0
begin
print 'SP is running.'
return
end
exec sp_getapplock @Resource = 'spapl', @LockMode = 'Exclusive', @LockOwner = 'Session', @DbPrincipal = 'public'
print 'AP0405140'
waitfor delay '00:00:10'
print 'AP0406541'
exec sys.sp_releaseapplock @Resource = 'spapl', @LockOwner = 'Session', @DbPrincipal = 'public'
end
版权声明:本文为ap0405140原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。