loop()がこれではいかんのはわかってるけど、どうすれば簡潔に書けるのかわからん
他にもあやしいところがある気がする
bool running = true;
std::deque<int> unsafe_queue;
std::mutex mtx;
std::condition_variable cond;
using unique_lock = std::unique_lock<std::mutex>;
void stop() { running = false; }
void add_event(int i)
{
unique_lock _(mtx);
unsafe_queue.push_back(i);
cond.notify_one();
}
void dispatch(int) { /*do something*/ }
void loop()
{
unique_lock lock(mtx);
while (running) {
cond.wait(lock, [] { return !unsafe_queue.empty(); });
auto ev = unsafe_queue.front();
unsafe_queue.pop_front();
dispatch(ev);
}
}
C++相談室 part150
■ このスレッドは過去ログ倉庫に格納されています
774デフォルトの名無しさん
2020/05/08(金) 01:21:33.28ID:Fn7VYFHg■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【W杯C組結果】スコットランド0-3ブラジル/モロッコ4-2ハイチ [征夷大将軍★]
- 【米紙報道】高市首相「コングレッショナルフェロー(官職)」経歴詐称疑惑… ★4 [BFU★]
- 【岐阜】“終わりの会”の最中に…中学校で男性教師(41)が生徒に顔を複数回殴られ出血し搬送 2年生の14歳少年を現行犯逮捕 各務原 [ぐれ★]
- 【速報】W杯C組前半終了:スコットランド0-2ブラジル/モロッコ2-2ハイチ [征夷大将軍★]
- 【地震】青森県で震度6強の地震 「北海道・三陸沖後発地震注意」発表か 気象庁が分析中 モーメント・マグニチュード7.0以上なら [ぐれ★]
- ベネズエラでM7.5地震 M7.2直後、ビル倒壊か [首都圏の虎★]
- 【MLB】ツインズ vs ドジャース ★5
- 【MLB】ツインズ vs ドジャース ★6
- 【地上波/DAZNほか】 FIFAワールドカップ2026 総合スレ★171【メキシコ/カナダ/アメリカ】
- MLB総合★50
- 〓たかせん〓 5
- ハム専 ★7
- 教育基本法改正20年 かつての自民党協議の議事録を入手 「愛国心」を盛り込むかどうかで論争😲 [861717324]
- 政府試算「成長率1.9%(今の4倍)が続けば実質賃金上昇・財政健全化・社保問題解決」 [237216734]
- 坊主クビAKB48花田藍衣「私一人では死なん。他のAKBメンバーがセックスしてる証拠出すぞ」 [977790669]
- Xまんさん👩「電車でジジイと肌が触れた瞬間その皮膚が汚れてそこから壊死していく感覚になる」⬅10万いいね [343591364]
- あくびしてる猫の写真撮った
- 【速報】1位通過でモロッコ、2位通過でブラジルとの対戦が確定 [369521721]