2009-05-23 12 views
8

私はIDEで動作しているときに突然ハングするvb.netプロジェクトを持っています。通常これは問題ではありません。 「一時停止」を押すだけで、現在実行中のスレッドを見て、デッドロック(またはその他のもの)を見つけることができます。デバッグ中にVisual Studio 2008がハングアップする原因は何ですか?

今はプログラムがハングアップするだけでなく、一時停止しようとするとビジュアルスタジオ自体がハングアップするという状況に遭遇しています。コントロールを取り戻すためには、デバッグ対象のプログラムのプロセスを終了させなければなりません。その時点で、Visual Studioは復活し、実行を一時停止できないと言います。プロセスを強制終了すると(もちろん)プログラムの状態が失われてしまうので、これは不都合なので、どこでハングするのか分かりません。です。

この動作には一般的な原因がありますか?私は何を探していますか?

+1

解決方法を見つけましたか?私はまったく同じ状況で立ち往生しています..... – Roey

答えて

-1

私はデバッグ対象のプログラムのコードをチェックしたいと思いますが、デバッグしようとしているコードに無限ループまたは競合状態が存在する可能性があります。これは過去の私の場合、特に私が持っていたシングルコアのラップトップの場合に当てはまりました。プログラムのどこで実行を中断しようとしていると思うかについての情報を与えることはできますか?

+0

まあ、私はsortofメッセージパッシングパラダイムを使用しています。それぞれの「正しくロックするのが難しい」クラスには、他のクラスが何かを実行するように要求する必要があるコールキューがあります。 プログラムは小さなゲームサーバーです。ロックすると、受信したデータを処理対象にキューイングしている複数のソケットがあります。処理対象にはいくつかのロギング情報がUIに表示され、ソケットにデータが書き戻されます。 これは私を混乱させます。私はロックを保持しないようにしようとしているので、UIをブロックするべきではありません。私のCPUがスパイクしないので、無限のキュー・ループもどちらかと同じようにはありません。 –

0

修正プログラムとサービスパックを確認してください。私はネットプログラミングとデバッグがハングするのに関連したバグを見ました。 (64ビットOS上でC++の32ビットアプリケーションをデバッグするときVSは私のためにハング:ES時々。)

3

は注意が必要ですVisual Studioの問題について具体的な修正を検索:http://social.msdn.microsoft.com/Search/en-US/?query=visual%20studio%202008%20hang&ac=3

また、からではないすべての修正プログラムMicrosoftは一般に公開されています。特定の問題を抱えるシステムを持つ顧客にのみ提供されるものもあります。だからMicrosoftに連絡して修正プログラムを入手する必要があります。彼らは、他の何かを壊すかもしれない修正プログラムをリリースする潜在的な欠点を制限するためにこれを行います。だから他のすべてが失敗したら、彼らに電話をしてください。

  1. は古いブレークポイントを削除し、変数の監視:ここ

    は、私はVisual Studioが演技を開始したときにやりたい何か他のものです。

  2. ビジュアルスタジオが実行されていない状態で、インテリセンスファイル(.ncb)を削除します。
  3. ソリューションをクリーンアップし、すべてのコードを再構築します。
6

あなたのプログラムが(アプリケーションと通信する)グローバルフックをインストールする場合 - これが当てはまるかもしれません。フックがあなたのアプリ(デバッガで一時停止)と通信しようとし、ロックされます。そして、デバッガはウィンドウメッセージを受け取ることができません。フックされたデバッガ(フックDLL)とフックアプリケーションとの古典的なデッドロックです。

+0

地獄、私は(SetWindowsHookExを使用して)アプリケーションをデバッグしている間に何が間違っているかを知ろうと多くの時間を費やしました。デバッガ・ステップごとに2〜2回、システム全体がハングします。フックコールを無効にすることは、そのトリックになります(ほとんど問題はありません。デバッグ中にフックが動作しないことが期待できません)。このヒントをありがとう! – sharpener

+0

それはそれを説明します...私は、ExcelアドインのためのWPFを使用してCOMアプリケーションを使って作業してきました。デバッガでは、ブレークポイントに達するか、スローされた例外を表示するか、またはデバッグを停止するまでに数分かかることがあります。かなりイライラする。 –

0

私は、デバッグ - >すべてのブレークポイントの削除を使用して問題を解決した、非常に似通った問題(VSは実行を中断しません)を持っていました。

関連する問題