No.4ベストアンサー
- 回答日時:
排他制御したいわけではなく、イベント待ちしたい、ということでしょうか。
・加工機スレッドからの通知を非同期にしてキューイングする。
・画面スレッドは管理スレッドに通知を投げ、応答待ちでブロッキングする
・ウェイトから抜けると画面スレッドはキューに加工状況があるを確認、あれば再度管理スレッドに通知。
こんな感じでしょうか。
環境がWindowsなら(Linux等の場合はよみかえてください)、
一番簡単なのはメッセージ送信かと思います。(PostMessage等)
で、幾つか機になる点が。
・画面スレッドが本当にブロッキングすると画面描画も止まる。
→ポーリングや非同期の返信メッセージ待ちにするか、MsgWaitForMultipleObjectsEx等を検討。
制御スレッドと描画スレッドに分離するとか。このあたりは詳細仕様がわからない外野にはなんとも。
・どんどん、とありますが管理スレッドからの戻りが遅くてキューがあふれた場合の仕様
→古いデータを捨てるなどしないと遅延がたまる/死ぬ等がありえます。
No.3
- 回答日時:
そもそも何の話でしょう?
環境も全く分かりませんし、スレッドといってもサブプログラムの意味のスレッドとは限りませんしね。
例えば、CGIでBBSを作っていて、そのスレッドの話とか...
No.2
- 回答日時:
自分で自分をロックする場合、誰がソレを解除してくれるのでしょうか。
ロックしたが最後、二度と解除されないような。
# もしくはロックカウントだけが増えていくだけか、
# タイムアウトがおきるか…。
どんなことが実現したくて、自分をロックしたいのでしょう。
単純にタイムアウトするまで待ちたい(特定時間止まりたい)等でしょうか。
(差しさわりのない範囲で)質問の背景を提示してください。
この回答への補足
加工機スレッド →→→→→→ 画面スレッド →→ 上位管理スレッドに通信
加工状況 加工状況その2
加工状況その2で上位管理スレッドに通知後、
上位スレッドから返答がきたら 次の加工状況を通信したいのですが、
どんどん加工状況が送られてきます。
画面スレッドで 次から次へと送られてくる情報を lockさせたいのです。
もちろん加工機スレッドは動いていないとだめなのです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- CPU・メモリ・マザーボード インテルCPUの世代ごとのデスクトップとノートのコア数についてこれで正しいですか?(*´ω`*) 1 2023/01/07 14:44
- グループウェア slackについて取り急ぎ教えて頂きたいことがあります 2 2022/04/08 09:05
- CPU・メモリ・マザーボード CPUについて 4 2022/07/09 13:41
- PHP htmlspecialcharsが機能していないです。 バグですか? 1 2022/04/05 01:22
- 2ちゃんねる Server relocation is in progress.って何でしょうか 1 2022/10/27 19:46
- 防犯・セキュリティ 鍵屋さんか、鍵に詳しい人に聞きたいですが、 「クレセント錠をかけ、ロックした状態で、外からロックもク 4 2023/03/31 13:48
- PHP if(preg_match("/[^0-9]/",$gu_d)){意味を教えてください。 1 2022/05/06 05:37
- 倫理・人権 酔っ払いが他人にたくさん迷惑を掛けているので、もっとお酒規制を厳しくした方が良いのでは? 2 2022/04/11 11:54
- その他(Microsoft Office) OneDrive Personalについて 1 2022/08/02 18:25
- PHP ここでの ②if($su_d<>"")の比較演算子 を使う理由は 1 2022/03/26 02:33
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
マルチスレッドのスレッド数を...
-
マイクロソフトedge で5チャン...
-
スレッドの監視方法について
-
メモリアクセスの競合について
-
MFC モーダルダイアログに動的...
-
C言語で一定時間待機後、再実行
-
アラート可能な待機状態とは
-
スレッドの監視方法
-
スレッドにて同一メモリの書き...
-
WaitForSingleObjectの使い方に...
-
Windows上で、シグナル(SIGTERM...
-
マルチスレッドプログラミング...
-
マルチコアを有効利用するプロ...
-
プログラムを終わらせてください。
-
Macターミナルで実行中のプログ...
-
VBAの配列サイズとメモリに関して
-
緯度、経度の 10進法と 60進法...
-
C言語で、メモリを解放しないで...
-
なんかC言語でプログラム書いて...
-
タスクマネージャーのプロセス...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
WaitForSingleObjectの使い方に...
-
スレッドにて同一メモリの書き...
-
VC++スレッドの正しい終了のさ...
-
スレッドの監視方法について
-
Windows上で、シグナル(SIGTERM...
-
スレッドの終了の仕方
-
スレッドの安全な終了のさせ方
-
CWnd::OnTimerのスレッドの取得
-
MFC通信プログラムマルチスレッ...
-
Linuxでスレッド優先度って変え...
-
.netアプリへのSendMessageでフ...
-
VB2005 シリアル通信のClose処理
-
別スレッドからメインダイアロ...
-
マルチスレッドについて
-
スレッドの終了はどうやるんで...
-
マルチスレッドプログラミング...
-
別スレッドのデータを受信できない
-
特定のスレッドの破棄
-
msec単位のWait Timerが作れない!
-
C# スレッド終了の監視について
おすすめ情報