Правильный способ выпуска COM -объектов?C#

Место общения программистов C#
Ответить
Anonymous
 Правильный способ выпуска COM -объектов?

Сообщение Anonymous »

Иногда, когда я заканчиваю приложение и пытается выпустить некоторые объекты COM, я получаю предупреждение в отладчике: < /p>

Код: Выделить всё

RaceOnRCWCleanUp
был обнаружен


Если я пишу класс, который использует объекты com, мне нужно реализовать idisposable и вызовать Marshal.finalreeSecomobject в idisposable.dispepose , чтобы правильно их освободить? Не называется вручную, мне все еще нужно выпустить их в финализаторах или GC выпустит их автоматически? Теперь я называю Dispose (false) < /code> в финализаторе, но мне интересно, правильно ли это. Видимо, событие поднимается на другом потоке, так как мне правильно справиться, если оно уволено при утилизации класса?

Подробнее здесь: https://stackoverflow.com/questions/157 ... om-objects
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»