A reader asks,
When you've used OnApplicationStart to store application variables how do you refresh it?
Simple - I use a URL variable. Inside my onRequestStart, I'll have something like this:
<cfif structKeyExists(url, "refreshmebabyonemoretime")>
<cfset onApplicationStart()>
</cfif>
A few notes. The name of the URL variable is completely arbitrary. You probably want something people can't guess, but it is up to you to decide how anal/secure you want to be.
Also - remember that when ColdFusion runs onApplicationStart by itself, it does so in a single threaded manner. When you run it, it isn't single threaded. But if you are just setting a bunch of application variables, it probably will not matter to you.
p.s. So hey, did you notice I used structKeyExists instead of isDefined? I'm slowly coming around to it. ;)