高負荷時動作

で落ちる。ということは低負荷で動かしててもある確率で落ちるってことか。

std::listをロック機構なしでつかってるのがまずいのかな。std::findをかけるところで落ちてる。
list中の値を変更する動作はあるが、要素の追加削除はないのでロック無しでいけると思っていたのが甘かったか。

とりあえずmutexかけるのは重いので配列に書き直し。

追記:
結局mutexをバリバリかけて終了。
それでもなぜか以前よりパフォーマンスが改善した。

プロファイリングしてから最適化マジ重要。