目录
北极星书库
CFLOCK标签用来对一段代码进行锁定。括在此标签内的代码在同一时间只能被一个请求来执行。执行CFLOCK代码块的请求对该段代码进行排斥性锁定,因此当一个请求正在执行CFLOCK代码块时,不允许其它的请求执行该段代码。ColdFusion按照“先来先服务”的原则进行排斥性锁定。
将修改共享数据的代码括在CFLOCK标签中,可以确保不会有两个用户同时修改数据。通常,更新应用程序范围的变量,如Server变量,Application变量,Session变量时,应该使用CFLOCK标签。如下例所示:
<HTML>
<HEAD>CFLOCK Example</HEAD>
<BODY>
<H3>CFLOCK Example</H1>
<CFLOCK NAME="ApplicationData" TIMEOUT=30>
<CFIF NOT IsDefined("Application.IsApplicationDataInitialized")>
<CFSET Application.IsApplicationDataInitialized=TRUE>
<CFSET Application.ImportantValue = 5>
</CFIF>
</CFLOCK>
<CFOUTPUT>
Important value is #Application.ImportantValue#
</CFOUTPUT>
</BODY>
</HTML>
前页
目录
北极星书库