Не отписываться от событий COMObject может привести к утечке памяти, хотя я использую Marshal.FinalReleaseComObject?
Я определил новый член в своем классе, который является COMObject
protected COMObject.Call call_ = null;
Этот класс имеетСледующие обработчики событий, на которые я подписался
call_.ActionA += new COMObject.AEventHandler(AEvent);
call_.ActionB += new COMObject.BEventHandler(BEvent);
call_.Destructed += new COMObject.DestructedEventHandler(CallDestructedEvent);
Когда вызывается событие Destructed, я делаю Marshal.FinalReleaseComObject
Marshal.FinalReleaseComObject(call_)
, но не отписываюсь от событий
call_.ActionA -= new COMObject.AEventHandler(AEvent);
call_.ActionB -= new COMObject.BEventHandler(BEvent);
call_.Destructed -= new COMObject.DestructedEventHandler(CallDestructedEvent);
Это может вызвать утечку памяти?или что GC справится?Можете ли вы связать свой ответ с каким-нибудь MSDN или статьей?
Спасибо!Дор.