Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Создает дескриптор, который упаковывает указанный объект.
Синтаксис
HRESULT CreateHandle(
[in] ObjectID object,
[in] COR_PRF_HANDLE_TYPE type,
[out] ObjectHandleID* pHandle);
Параметры
object
[in] Ссылка на объект для упаковки с помощью дескриптора.
type
[in] Тип создаваемого дескриптора.
pHandle
[out] Указатель, предоставленный вызывающим, который указывает на дескриптор, созданный для упаковки указанного objectобъекта.
Замечания
Ниже приведены ожидаемые значения в зависимости от указанного COR_PRF_HANDLE_TYPE значения:
-
COR_PRF_HANDLE_TYPE_WEAK: отслеживает, остается ли объект в памяти с течением времени. Если объект оболочки был собран, ICorProfilerInfo13::GetObjectIDFromHandle возвращает значение NULLObjectID. -
COR_PRF_HANDLE_TYPE_STRONG: применяет, что объект выживает сборки мусора, даже если ни один другой объект не ссылается на него. -
COR_PRF_HANDLE_TYPE_PINNED: то же самое, что и сильный дескриптор, но и гарантирует, что объект остается в памяти во время сборок мусора.
Чтобы убедиться, что object ссылка допустима, этот метод должен вызываться из ICorProfilerCallback такого метода, как ICorProfilerCallback::ObjectAllocated. Не удается вызвать CreateHandle асинхронный прослушиватель EventPipe. Объект, полученный с помощью полезных данных события, может быть удален или перемещен в память, если сборка мусора произошла между временем выдачи события и момента его получения.
Не забудьте вызвать ICorProfilerInfo13::D epple после того, как созданный дескриптор больше не нужен. Рекомендуется одновременно выделить менее 4096 дескрипторов, чтобы избежать влияния на производительность сборщика мусора.
Требования
Платформ: См. сведения о поддерживаемых операционных системах .NET.
Заголовок: CorProf.idl, CorProf.h
Версии .NET: Доступно с .NET 7.0