Marshal.AddRef(IntPtr) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Увеличивает счетчик ссылок для указанного интерфейса.
public:
static int AddRef(IntPtr pUnk);
[System.Security.SecurityCritical]
public static int AddRef (IntPtr pUnk);
[System.Runtime.Versioning.SupportedOSPlatform("windows")]
public static int AddRef (IntPtr pUnk);
public static int AddRef (IntPtr pUnk);
[<System.Security.SecurityCritical>]
static member AddRef : nativeint -> int
[<System.Runtime.Versioning.SupportedOSPlatform("windows")>]
static member AddRef : nativeint -> int
static member AddRef : nativeint -> int
Public Shared Function AddRef (pUnk As IntPtr) As Integer
Параметры
- pUnk
-
IntPtr
nativeint
Увеличиваемый счетчик ссылок интерфейса.
Возвращаемое значение
Новое значение счетчика ссылок для параметра pUnk
.
- Атрибуты
Комментарии
Среда CLR управляет числом ссылок com-объекта, поэтому использовать этот метод напрямую не требуется. В редких случаях, например при тестировании пользовательского маршалера, может потребоваться управлять временем существования объекта вручную. После вызова AddRefнеобходимо уменьшать количество ссылок с помощью метода, Marshal.Releaseнапример . Не полагайтесь на возвращаемое значение AddRef, так как оно иногда может быть нестабильным.
Можно вызвать Marshal.GetComInterfaceForObject, Marshal.GetIUnknownForObjectили Marshal.GetIDispatchForObject , чтобы получить IntPtr значение, представляющее указатель интерфейса IUnknown . Вы также можете использовать эти методы и AddRef метод для управляемых объектов, чтобы получить ИНТЕРФЕЙСы COM, представленные вызываемой оболочкой COM управляемого объекта. Если вы не знакомы со сведениями об этом типе оболочки, см. статью Вызываемая оболочка COM.
Применяется к
См. также раздел
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по