tagCANDY CGI VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板) [ツリー表示へ]   [Home]
一括表示(VB.NET VB2005)
タイトル映像のフリーズ現象
記事No10033
投稿日: 2010/04/01(Thu) 11:40
投稿者shin
いつもお世話になっています。

以前に画像変換機を使用して映像を再生するアプリケーションを
作成しましたが、半月程度動作させているとフリーズしてしまう
現象が発生しました。

調査してみると画像変換機に対して定期的にPINGを送信する以下の部分で
Exceptionが発生していることがわかりました。
Exception詳細から色々調べてみたんですが解決策がわからず足止め状態です。

このエラーがフリーズの直接的な原因になるのか、またその解決策をどなかた
ご教授いただけないでしょうか。


●Exception発生箇所
「My.Computer.Network.Ping(機器IPアドレス)」

●Exception詳細
System.Net.NetworkInformation.NetworkInformationException:
クォータが不足しているため、要求されたサービスを完了できません。
場所 System.Net.NetworkInformation.SystemNetworkInterface.GetAdaptersAddresses
(AddressFamily family, FixedInfo fixedInfo)
                               :
場所 Microsoft.VisualBasic.Devices.Network.Ping(String hostNameOrAddress)

Visual Basic2005 WindowsXPの環境で作成し、WindowsXPで動作させています。

ご教授よろしくお願いします

[ツリー表示へ]
タイトルRe: 映像のフリーズ現象
記事No10034
投稿日: 2010/04/01(Thu) 13:18
投稿者魔界の仮面弁士
> 半月程度動作させていると
半月というと、49.7 日問題とも違いそうですね。
現象の再現性は高いですか?


> Exception詳細から色々調べてみたんですが解決策がわからず足止め状態です。
そのメッセージに相当する Win32 エラーとしては、
 ERROR_WORKING_SET_QUOTA (1453)
 ERROR_PAGEFILE_QUOTA    (1454)
が挙げられます。
NetworkInformationException 例外の ErrorCode プロパティはいくつでしょうか?


> このエラーがフリーズの直接的な原因になるのか、またその解決策をどなかた
> ご教授いただけないでしょうか。
わかりません。関係あったのかも知れませんし、関係無いのかも知れません。
長時間稼働時にフリーズする例としては、並列処理のコーディングミスによる
デッドロックなどという可能性もあったりしますし。


> 場所 System.Net.NetworkInformation.SystemNetworkInterface.GetAdaptersAddresses
> (AddressFamily family, FixedInfo fixedInfo)
この中で発生したのだとすれば、該当箇所は GetAdaptersAddresses API の呼び出し部だと
推測しますが……原因にしても解決策にしても、正直なところ皆目見当が付きません。

仮に、コードの問題ではなく、実行環境側の問題だとしたら、たとえば
「省電力モードを使わないようにしてみる」「ドライバーを更新してみる」といった対応で、
運がよければ軽減されるかも知れませんが、理由が分からないので、根本的な解決にはなりませんね。

・別のネットワーク環境で試すことはできますか?
・例外発生時、ネットワークは正常に稼働していますか?
・例外発生時において、メモリー消費量が多くなっていたりはしませんでしたか?
・プロセスを再起動すると回復しますか? 回復しない場合は、OS 再起動ではどうですか?
・イベントログに、関係ありそうな情報が記録されていませんか?
・下記のようなチューニングを行っていたりはしませんか?
http://susu.cc/2008/12/windows2000-dcsizeopt.html

[ツリー表示へ]
タイトルRe^2: 映像のフリーズ現象
記事No10035
投稿日: 2010/04/01(Thu) 14:54
投稿者shin
> 半月…というと、49.7 日問題とも違いそうですね。
> 現象の再現性は高いですか?

恥ずかしながら49.7 日問題というものを初めて知りました。
GetAdaptersAddresses APIの呼び出し元がタイマなので可能性としては考えられる
と思います。
半月程度と言ったものの再現性は低く、現象を確認してから一ヶ月以上経過
しても現象は確認できていません。


> そのメッセージに相当する Win32 エラーとしては、
>  ERROR_WORKING_SET_QUOTA (1453)
>  ERROR_PAGEFILE_QUOTA    (1454)
> が挙げられます。
> NetworkInformationException 例外の ErrorCode プロパティはいくつでしょうか?

残念ながら ErrorCode プロパティはログに記載されていません。


> この中で発生したのだとすれば、該当箇所は GetAdaptersAddresses API
> の呼び出し部だと推測しますが、原因にしろ解決策にしろ、皆目見当が付きません。
> ・例外発生時、ネットワークは正常に稼働していますか?
> ・例外発生時において、メモリー消費量が多くなっていたりはしませんでしたか?
> ・プロセスを再起動すると回復しますか? 回復しない場合は、OS 再起動ではどうですか?
> ・イベントログに、関係ありそうな情報が記録されていませんか?

アプリの再起動にて復旧してしまい、メモリ使用量及びCPU使用率等の現象発生時の情報
については取得できませんでした。
イベントログにはメモリ解放として使用しているツール(eMem.exe)の、初期化エラーが発生
していました。こちらも関係しているのでしょうか‥。

こんな情報不足な問題にコメントいただきありがとうございます。

[ツリー表示へ]