役に立ちそうもないTips移転版

俺得なTipsを書き連ねるだけのブログ。

メモ:「Marshal.ReleaseComObjectは危険な場合がある 」

ちょいと備忘録。
.netな世界からCOMな輩を呼ぶときはユーザー側できっちり参照カウント管理しないとプロセスが死ぬに死ねなくなる。
ということで、使い終わったらMarshal.ReleaseComObjectに渡して始末しとこうね、が定石っぽいのだが、
特殊な事例においてはそれまずいよという話。
InfoQの記事: Marshal.ReleaseComObjectは危険な場合がある

まあ、「COMで作ってたコンポーネントをマネージドコンポーネントに置き換えてたら
そいつらにまでMarshal.ReleaseComObject呼んじゃってこけた」ということらしいから、
Office連中とか呼ぶ分には多分気にしなくていいだろうけど。さすがにMSもOfficeを.netで書き直す根性はあるまいて。