重複の可能性:
サーバーを再起動せずにアプリケーションを再起動しますか?
ColdfusionServerインスタンスをリセットせずにColdfusionApplication/ application.cfcをリセットするにはどうすればよいですか?私の記憶が正しければ、application.cfc内にreinit関数を作成したり、ファイルの名前を変更したりするなど、いくつかのトリックがあります。
重複の可能性:
サーバーを再起動せずにアプリケーションを再起動しますか?
ColdfusionServerインスタンスをリセットせずにColdfusionApplication/ application.cfcをリセットするにはどうすればよいですか?私の記憶が正しければ、application.cfc内にreinit関数を作成したり、ファイルの名前を変更したりするなど、いくつかのトリックがあります。
いくつかの手順:
まず、すべてのアプリケーション初期化ロジックがCFCのOnApplicationStartメソッド内に含まれていることを確認します。ネストされた呼び出しがある場合、それは問題ありません。1回の呼び出しでアプリケーションを簡単に再初期化できる限り、作業ははるかに簡単になります。
次に、これはapplication.cfcのOnRequestStartメソッドで使用するコードです。
<cfif structKeyExists(url,'resetappvars')>
<cfset OnApplicationStart() />
</cfif>
resetAppVarsの代わりに、コード化された値を自由に使用してください。
アプリケーションを再起動するには、 ApplicationStop()を使用してアプリケーションを停止し 、このアプリケーションの任意のページへの次の要求によって自動的に開始されます。
ApplicationStop()はColdFusion9の新機能です。
CF8を使用していて、「if reinit、then call onApplicationStart()」アプローチを使用している場合は、競合状態を回避するようにしてください。これは良い説明です:http://blog.bullamakanka.net/2009/12/coldfusion-shared-scopes-and-race.html