[過去ログ]
Win32API質問箱 Build127 (1002レス)
Win32API質問箱 Build127 http://mevius.5ch.net/test/read.cgi/tech/1639053176/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
必死チェッカー(本家)
(べ)
自ID
レス栞
あぼーん
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
85: デフォルトの名無しさん [sage] 2022/01/20(木) 13:52:02.54 ID:5C47L32n _beginthreadで作成したスレッドが、後で親プロセスから見て生きているかどうかを調べる方法はありますか? 基本的にずっとループして生きていることを期待しているスレッドですが、何らかの不具合でスレッドが異常終了した ことを親プロセスで検知したいのです スレッド側でシグナルオンオフしたりグローバル変数で動作してることを常に書き込むなどの工夫は思い付きましたが、 そもそもスレッドハンドルを使って有効か無効かを知る方法があれば簡単なのですが、そのような方法はありますか? http://mevius.5ch.net/test/read.cgi/tech/1639053176/85
88: デフォルトの名無しさん [sage] 2022/01/20(木) 15:27:31.83 ID:5C47L32n >>86-87 頂いた情報を元に色々テストしてみます どうもありがとうございました http://mevius.5ch.net/test/read.cgi/tech/1639053176/88
90: デフォルトの名無しさん [sage] 2022/01/20(木) 18:12:57.50 ID:5C47L32n _beginthreadはCランタイムを使うために必要なメモリ処理を追加したCreateThreadのラッパーらしいのと、 WaitForSingleObjectでの監視はこれまでも問題なく動作していたので、_beginthreadのままタイマー監視で WaitForSingleObjectのテストしてみました スレッドの異常終了に対応できるのかはテストできません(異常終了の再現はどうすれば?)のでスレッド途中で 特定条件で_endthreadを実行しただけですが、これは当然でしょうが問題なくWAIT_TIMEOUTの判定でスレッド状態を検知できました 同じく、WaitForSingleObjectの代わりにGetExitCodeThreadに置き換えた場合、スレッド動作中は STILL_ACTIVEの判定、スレッド停止中はGetExitCodeThread自体がエラーで返ってくることでスレッド状態の検知ができました (スレッドは永久ループで戻り値を返しませんから、threadex系を使っていません) _endthreadを使ってのスレッド途中終了ではなく、異常終了時も同じように動作するのかが不安材料ですが、 とりあえずこれでOKということにしておきます(スレッドが動いていないんだったら各APIも同じ動作では?という判断) どうもありがとうございました http://mevius.5ch.net/test/read.cgi/tech/1639053176/90
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.226s*