C++/CLI
.Net2008 windowsフォームアプリケーション
二つのスレッドが同時に動いているマルチスレッドプログラムを作成しています。
デバッグでブレイクポイントを張って途中で止めたいのですが、止めてすぐもしくはF10で2,3行進めるとフリーズしてアプリが動かなくなってしまいます。他のoutlook等も動かせず、タスクマネージャも開かないため、画面下のウィンドウを右クリック、閉じるを5~10分くらいかけて行って終了させています。たまにVisualStudio自体もフリーズして落ちることがあります。
ブレイクポイントで止めなければフリーズはしません。
プログラムの構成としては、
片方は外部装置からリアルタイムでデータを受信し、判別した結果を出力するスレッドと、その判別結果を元に状態を遷移させるスレッドです。
また、状態によってはタイマーを設けている箇所があり、タイマー処理もスレッドで行っています。
ブレイク張らずに実行した時におかしい動作をしている箇所があるので1行ずつ見たいのですが、マルチスレッド環境ではフリーズするものなのでしょうか?
No.2ベストアンサー
- 回答日時:
信憑性がどこまであるかわかりませんが、改善するかどうか、
おまじないをかけて、フリーズの頻度が変わるか試してみて下さい。
http://mikememo.cocolog-nifty.com/blog/2008/03/v …
対策:
http://www.itmedia.co.jp/help/tips/windows/w0476 …
回答ありがとうございます。
日本語のIMEの影響ですか…
ブレイクで片方の処理を止めてるのがだめなんだと
思ってました。
さっそく試してみます。
これで直っても一応別のデバッグ用の処理を入れて見落としがないようにしたいと思います。
どうもありがとうございました。
No.1
- 回答日時:
> マルチスレッド環境ではフリーズするものなのでしょうか?
極めて頻繁に「します」。
10分も待つのはばかげているので、即座に電源を切ります。
経験上、これでHDDが壊れることはほとんどありませんが、
OSが変になるのは半年に1度程度なので十分安全です。
回答ありがとうございます。
やっぱりそういうものなんですね。。
ブレイク張ってF5押すとすぐにフリーズするので、
途中で止めるのをあきらめてメモ帳に処理内容を書き込む関数を作って
せっせとソースに埋め込んでいます。
どうもありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- バックアップ Windows11パソコンのデータを数クリックで完全に引っ越しするにはどうすれば良いでしょうか? 5 2022/10/11 14:08
- デスクトップパソコン APEX(PC版)が数秒に一度フリーズしてしまいます。 3 2023/01/17 19:45
- WordPress(ワードプレス) Wordpress 複数プラグインの不具合? 1 2022/10/09 21:52
- Android(アンドロイド) Androidってなぜ画像や動画のダウンロードがマトモにされない、出来ない、時々ダウンロードに失敗す 5 2022/08/05 23:22
- Windows 10 PCでゲームをやるとPC再起動必須のフリーズになります 4 2023/02/17 11:29
- PHP ここでの ②if($su_d<>"")の比較演算子 を使う理由は 1 2022/03/26 02:33
- Windows 8 Window10の初期化をスムーズにする方法を教えてください。 4 2022/08/07 10:19
- PHP htmlspecialcharsが機能していないです。 バグですか? 1 2022/04/05 01:22
- デスクトップパソコン ノートンが爆弾を残しているのか、Windowsディフェンダーが重いのかどっちなのでしょうか? 5 2023/05/06 12:01
- Windows 10 古いパソコンでフリーズが少なく、新しいパソコンでフリーズが多いのはなぜですか。 6 2023/05/26 23:35
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
WaitForSingleObjectの使い方に...
-
_beginthreadとPostThreadMessa...
-
【VC++6.0(MFC)】スレッドの呼...
-
マルチスレッドのスレッド数を...
-
メインスレッドのPostMessageと...
-
スレッドについて
-
VC++スレッドの正しい終了のさ...
-
スレッドの終了はどうやるんで...
-
pthread_attr_tへの値の代入に...
-
Mutexの次の使い方で
-
別スレッドとイベントの終了手...
-
PHP スレッド構成の掲示板について
-
VB2005 シリアル通信のClose処理
-
スレッドの終了の仕方
-
Macターミナルで実行中のプログ...
-
他のPC上にあるexeを、そのP...
-
バックグラウンドのプロセスの...
-
プロダクションコードとは?
-
DoEvents関数って何?
-
VBAの配列サイズとメモリに関して
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VC++スレッドの正しい終了のさ...
-
WaitForSingleObjectの使い方に...
-
マイクロソフトedge で5チャン...
-
スレッドの安全な終了のさせ方
-
スレッドの終了はどうやるんで...
-
スレッドにて同一メモリの書き...
-
スレッドの監視方法について
-
マルチスレッドについて
-
スレッドの終了の仕方
-
Linuxでスレッド優先度って変え...
-
Windows上で、シグナル(SIGTERM...
-
LinuxでDoEvents()同等機能
-
VB2005 シリアル通信のClose処理
-
待機関数(WaitForMultipleObjec...
-
マルチスレッドプログラミング...
-
_beginthreadexで生成したスレ...
-
msec単位のWait Timerが作れない!
-
別スレッドからメインダイアロ...
-
マルチスレッドのスレッド数を...
-
.NetのBackgroundWorkerクラス...
おすすめ情報