PSSdev

PssとPssEditorで、同じDBとLogを扱うために、同期処理と排他制御が必要となる。

PssとPssEditorの同期

PssEditor でのログの更新タイミング

エディタでの変更に応じて、適宜、ログを更新する。更新とは、「ログの入力」「変更」「ログの出力」という一連の処理のことである(この間にPss上でログの変更がないように気を付ければよい)。

  • 行の挿入
  • 行の削除
  • 行の貼り付け
  • 行の切り取り

これらのタイミングで、DBの上書きも行う。

これは、行の挿入等でログの変更を(必然的に)伴うが、これを「セクションの変更時」等の「上書き確認ダイアログ」で「上書きしない」を選んだ場合に、ログの変更状態(上書き済み)とセクションの状態が一致しなくなるのを防ぐためである。

DBの上書きを同時に行うことで処理速度の低下が発生してしまったが、行の挿入・削除等の処理は頻繁に行う処理ではないということで、無視できると考えている。

Pss でのログの入力タイミング

回答開始直前
PssEditor で変更されている場合があるので。
DB の再読込時
DBとログは表裏一体であるという考えから。

Pss でのログの出力タイミング

Pss でのログの出力は、確実に1度だけ、「回答終了時」である。

Pss の終了時にはログを上書きしないという点に注意(もし上書きしたら、PssEditorでの変更を上書き=破棄してしまう可能性があるため)。

このエントリーをはてなブックマークに追加

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2005-04-06 (水) 01:38:33 (4996d)