| 一定時間アクティブでない状態の後でADSクライアントの応答で遅延が発生する |
このテクニカルノートの情報は、以下に該当します:
| 製品: | RSView32 Active Display | タイプ: | 問題と解決方法 |
| テクニカルノートID: | P1869JA | ||
| パッケージ/モジュール: | Display Client | 英文版作成日: | 2001/02/16 |
| リビジョン: | 6.30.16 | ||
| 修正リビジョン: | |||
| サブシステム: | N/A |
| テクニカルノート本文: |
問題:
1分間アクティブでない状態の後で、ADSクライアント上のグラフィックディスプレイを変更しようとすると、ADSクライアントの応答で遅延が発生します。通常、遅延時間は約15secです。この動作は必ず発生するのではなく、多くの場合は予測できません。クライアントは休眠しているように見えます。
原因:
一定時間の経過後にHTTP接続がタイムアウトすると、接続を再び初期化しなければなりません。これは、ADSのベースとなっているMicrosoftのHTTPの問題と思われます。接続のタイムアウトは、IISユーザインターフェイスでは構成できません。
解決方法:
解決方法は、ユーザから見えない(ADSクライアント上の)ディスプレイを頻繁に呼出して、.gfxファイルの接続を常にアクティブにすることです。ADSサーバからADSクライアントにコマンドを発行するには、メモリ内で常にキャッシュされるディスプレイの1つにRADRemoteCommand ActiveXコントロールが実装されていなければなりません。RADRemoteCommand ActiveXについては、以下のテクニカルノートを参照してください。
A1099JA - ActiveXコントロールを使用してRADSサーバからRADSクライアントにコマンドを発行するユーティリティ
実装の手順:
- 'CompName'および'CMD'という2つのメモリ文字列タグを初期値なしで作成します。
- 新しいディスプレイを作成して、RADRemoteCommand ActiveXを挿入して、'hidden'という名前でディスプレイを保存します。
- ActiveXのプロパティパネルをオープンして、'Animation'タブを選択します。
- 'CompName'タグをComputerNameアニメーションに割当てて、'CMD'タグをRSViewCommandアニメーションに割当てます。
- ADSクライアントのスタートアップマクロを作成するか(スタートアップマクロが存在しない場合)、またはdisplay hidden /zaという行を追加することにより、既存のスタートアップマクロを編集します。
- もう1つのディスプレイを作成して、テキストを挿入して(例:"ghost display"), 'ghost'という名前で保存します。
- 以下の行を含む新しいマクロを作成して、'ShowGhost'という名前でマクロを保存します。
display ghost /z
pause 1
flushcache ghost - 以下の行を含む新しいマクロを作成して、'Control''という名前でマクロを保存します。
Set CompName "All"
Set CMD "ShowGhost"
pause 1
Set CMD"" - 新しいイベントファイルを作成して、デフォルトの評価間隔(1sec)を使用して、以下のイベントを追加します。
Action: Control
Expression: interval("30 sec")
'Ping'という名前でイベントファイルを保存して、ADSサーバのプロジェクトスタートアップで開始されることを確認します(すなわち、スタートアップマクロにEventOn pingという行を追加します)。
法的な注意事項: |
ロックウェル・ソフトウェア(RSI) のKnowledgebaseに記載された情報は、いかなる保証もなく「そのままで」提供されます。RSI は、明示または暗示されたいかなる保証も負いません。また、RSI がそのような損害の可能性を忠告していた場合でも、直接、間接、偶発的、必然的な利益の損失または損害を含むいかなる損害についても、RSI は責任を負いません。
©2000 Rockwell Software Inc. All rights reserved.
