Что такое Windows "USER objects"

Согласно документации numpy.ndarray.view , он принимает два входных аргумента: dtype и type. Если аргумент dtype является подклассом numpy.ndarray, он интерпретируется как аргумент type.

С другой стороны, согласно документации cupy.ndarray.view , он принимает только один входной аргумент: dtype. Я думаю, что cupy.ndarray.view не поддерживает аргумент type.

11
задан JonDrnek 15 May 2009 в 12:47
поделиться

3 ответа

Вот «классическая» статья MSDN: Дайте мне указатель, и я покажу вам объект

В прошлый раз, когда я отслеживал утечки объектов Windows (которые я подозреваю, что у вас есть) Process Explorer был удобен (handley?). В нижней панели могут отображаться некоторые выделенные системные объекты, а также может выполняться простой подсчет объектов USER, GDI и т. Д.

Куча рабочего стола , которая представляет собой пул памяти, в котором находится реальный «материал» дескриптор представляет жизни (по крайней мере, некоторые дескрипторы, по крайней мере, не ядра). Иногда дело не столько в количестве выделенных вами дескрипторов, сколько в том, сколько памяти использует каждый объект под этим дескриптором. Вы можете отладить кучу таким образом . Установить это сложно.

11
ответ дан 3 December 2019 в 04:33
поделиться

Прочтите об этом здесь :

Категории объектов

Система предоставляет три категории объектов: пользователи, интерфейс графического устройства (GDI) и ядро. Система использует пользовательские объекты для поддержки управления окнами, объекты GDI для поддержки графики и объекты ядра для поддержки управления памятью, выполнения процессов и межпроцессного взаимодействия (IPC). Для получения информации о создании и использовании определенного объекта обратитесь к соответствующему обзору.

Пользовательские объекты

Пользовательские объекты интерфейса поддерживают только один дескриптор для каждого объекта. Процессы не могут наследовать или дублировать дескрипторы пользовательских объектов. Процессы в одном сеансе не могут ссылаться на дескриптор пользователя в другом сеансе.

Существует теоретический предел в 65 536 дескрипторов пользователей за сеанс. Тем не мение, максимальное количество пользовательских дескрипторов, которые можно открыть за сеанс, обычно меньше, поскольку на него влияет доступная память. Также существует лимит пользовательских дескрипторов по умолчанию для каждого процесса. Чтобы изменить это ограничение, установите следующее значение реестра:

HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \ Windows \ USERProcessHandleQuota

Это значение может иметь значение от 200 до 18 000.

12
ответ дан 3 December 2019 в 04:33
поделиться

Я не знаю , что это , но я знаю, что они включают оконные дескрипторы.

Для оконных дескрипторов существует система широкий максимум около 32000 и максимум 10000 для каждого процесса. (Это может быть просто ограничение объекта USER, а не только дескрипторы окна.)

Количество дескрипторов окна может быть очень большим, если вы каким-то образом пропускаете дескрипторы окон , или если вы используете огромное количество окон. (Обратите внимание, что даже простые элементы управления, такие как текстовая метка, занимают один дескриптор окна.)

1
ответ дан 3 December 2019 в 04:33
поделиться
Другие вопросы по тегам:

Похожие вопросы: