CFSetting RequestTimeout Updates Timeouts, It Does Not Set Them

<!--- Set the current time out to be 3 seconds. --->
<cfsetting requesttimeout="3" />
 
<!---
	Get the millisecond start time for page processing
	(so that later on, we can check to see how long
	the page ran overall).
--->
<cfset intStart = GetTickCount() />
 
 
<!--- Try to kill some time. --->
<cftry>
 
	<!---
		Here, we are killing time - 4 seconds to be
		approximate. This will exceed the request time
		out set above (3 seconds) and will throw an error.
	--->
	<cfset KillTime( 4000 ) />
 
 
	<!--- The KillTime() method call has timed out. --->
	<cfcatch>
 
		First Timeout!<br />
 
		<!---
			In an attempt to "recover" from this time out,
			update the request time out to be six seconds.
		--->
		<cfsetting requesttimeout="6" />
 
 
		<!--- Try to kill some more time. --->
		<cftry>
 
			<!---
				We are going to try and kill about four
				seconds. If this is in terms of the six-second
				timeout set above, this should NOT timeout.
				However, if this is in the context of the
				overall page time (including previous kill time
				calls), then this will timeout.
			--->
			<cfset KillTime( 4000 ) />
 
 
			<!--- The KillTime() method has timed out. --->
			<cfcatch>
 
				Second Timeout!<br />
 
			</cfcatch>
		</cftry>
 
	</cfcatch>
 
</cftry>
 
 
Total Time: #(GetTickCount() - intStart)#

For Cut-and-Paste