セットアップは次のとおりです。
私のウェブサイトでエラーが発生するたびに、管理者に電子メールが送信されている間、エラーサイトが表示されます。
このWebサイトには、AJAXおよびXMLを介して15秒ごとに自動的に更新される多くのライブ統計が表示されます。ただし、統計は、ユーザーの数に関係なく、15秒ごとに1回だけ計算されます。これは、MSSQLデータベースに隠されたタイムスタンプによって行われます。
- Webサイトは、タイムスタンプが14秒より古いかどうかを確認します
- そうである場合は、タイムスタンプを更新し、統計の計算を実行してXMLに保存します
- 最後に、XMLがループされ、要求された統計がユーザーに表示されます
タイムスタンプが15秒より前でない場合、2番目のステップはスキップされます。
私の問題は、2人のユーザーが同時にタイムスタンプ要求を行った場合、両方のユーザーがXMLドキュメントを更新しようとする前に、システムにタイムスタンプを更新する時間がないため、一方のユーザーがエラーメッセージ:
msxml3.dll (0x80070020) The process cannot access the file because it is being used by another process. /file.asp, line 310
XMLドキュメントを保存する前に、プロセスが使用されているかどうかを確認することはできますか?それとも、この明示的な種類のエラーを無視しますか?