【EDCB】EpgDataCap_Bonについて語るスレ 37at AVI
【EDCB】EpgDataCap_Bonについて語るスレ 37 - 暇つぶし2ch42:名無しさん@編集中
14/04/27 20:57:59.77 VVuzXCW6.net
○もさんのtwitterを見て思い出した・・・・・

EDCB9.46(今でも使っている)で、たまに(15録画/週で、2ヶ月に一回ぐらいの頻
度)EpgDataCap_Bon.exeが落ちることがあり、録画環境にVS入れてデバッグビル
ドで運用して現場を捕まえることができた。(一昨年の秋のことで、この修正
以降1年半、原因不明でEDCB9が落ちることはなくなった)

まるもさんのtwitterを見て、EDCB10でも同じバグがあるのでは?と思いソー
スを眺めてみたら、その可能性がありそうなので、参考まで。
(EDCB10は使ってないし、細かくは見てないので、外してるかも・・・)

[EDCB9の場合]
CEpgDataCap_BonMain::m_NeedPIDMap が複数のスレッドで使用されているのに
排他処理がされていない。
このため、CEpgDataCap_BonMain::AnalizeThread() から呼ばれる
CDataIO::SetSelectPID() で (ポインタで渡された)m_NeedPIDMap を参照して
いる間に他のスレッドで m_NeedPIDMap.clear();が行われると、
CEpgDataCap_BonMain::AnalizeThread() のスレッドが落ちる。
m_NeedPIDMap を使用しているところ全てに CRITICAL_SECTION を使用した
排他処理をいれることで解決。

[EDCB10の場合]
CTSOut::needPIDMap が、上記の CEpgDataCap_BonMain::m_NeedPIDMap と同様
と思われる。
CTSOut::IsNeedPID() → CTSOut::AddTSBuff() → CBonCtrl::AnalizeThread()
が落ちるのではないかと推測。


次ページ
続きを表示
1を表示
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch