Описание тега heapalloc
1
ответ
MASM dll выделение памяти
Мне нужна помощь с моей MASM DLL. Я считаю элементы в массиве, затем я хочу выделить память для другого массива, в C я использую вектор. Я пытался использовать: invoe GetProcessHeap invoke HeapAlloc, eax, HEAP_NO_SERIALIZE + HEAP_ZERO_MEMORY, <si…
12 янв '15 в 21:34
1
ответ
MASM вектор, как массив динамического выделения
Мне нужна помощь с моим кодом MASM. Когда я использую динамическое размещение для массивов, мои другие переменные меняют значения после добавления нескольких элементов в массив. .686 .387 .model flat, stdcall .xmm include include\kernel32.inc includ…
22 янв '15 в 20:11
1
ответ
(C) Тактика внедрения для распределителей кучи?
Где найти хорошие ресурсы для изучения плюсов и минусов различных способов реализации распределителей кучи? Предпочтение отдается ресурсам, которые касаются эффективности (фрагментация, пропускная способность и т. Д.). Я НЕ ищу простые репозитории к…
01 июн '10 в 00:13
2
ответа
Флаг HEAP_NO_SERIALIZE
Когда я вызывал функцию HeapCreate в предыдущем примере кода, я использовал флаг HEAP_NO_SERIALIZE, потому что оставшаяся часть примера кода не является многопоточной. Джеффри Рихтер написал предложение в своей книге (Windows через C/C++)Но это стра…
25 авг '10 в 07:41
1
ответ
Требует ли освобождение вызова HeapAlloc с помощью Assembly?
В начале моей программы я выделяю память, используя HeapAlloc. Нужно ли его освобождать или это делается системой, когда программа заканчивается? start: call GetProcessHeap mov r11, rax ; r11 contains handle mov rdi, 8000000 mov rsi, 0 mov rdx, r11 …
28 дек '18 в 03:42
1
ответ
(C) какие политики кучи чаще всего используются?
Я слышал, что "лучше подходит" довольно часто используется, но я, кажется, не много читал об этом в Интернете. Что наиболее часто используется / считается наиболее эффективной политикой, используемой распределителями кучи. (Я признаю, что мой словар…
01 июн '10 в 03:47
2
ответа
PIMPL и распределение стека
Так что я думал о PIMPL и распределении стека. Я писал библиотеку и решил использовать PIMPL, чтобы скрыть приватного члена класса. Это означает, что я бы объявил класс, как это class Foo { private: class Handle; std::tr1::shared_ptr<Handle> h…
11 июл '10 в 02:33
1
ответ
"LPVOID" не может быть назначен объекту типа X
Я имею дело с функцией, которая имеет дело с USB-устройствами. Но у меня уже есть проблема в чем-то простом: Я получаю ошибку компилятора A value of the type "LPVOID" can not be assigned to an entity of the type "PSP_DEVICE_INTERFACE_DETAIL_DATA" in…
24 июн '14 в 15:20
1
ответ
MASM dll выделение памяти в многопоточном приложении
Я спросил, как динамически распределять память в MASM, но получил еще 2 вопроса. Как я могу выделить память для байтов? .data tab DB ? result DB ? .code invoke GetProcessHeap ; error here mov tab, eax ; I cannot do this because of wrong sizes, AL an…
14 янв '15 в 16:12
2
ответа
VC++ HeapAlloc внутри функции дает нулевой указатель
Я пытаюсь использовать HeapAlloc() выделить буфер, используемый SetupDiGetDeviceRegistryProperty(), внутри GetDeviceInformation() Я имею: HANDLE hHeap = GetProcessHeap(); while (SetupDiEnumDeviceInfo(DeviceInfoSet, MemberIndex++, DeviceInfoData)) { …
21 ноя '12 в 02:58
0
ответов
malloc возвращает NULL и устанавливает errno в ENOMEM, но достаточно ли места в куче?
У меня есть ситуация, в которой malloc() возвращается NULL и устанавливает errno в ENOMEM, Но у кучи CRT (которая может быть увеличена) достаточно памяти для работы. На момент mallocМоя память процесса составляет около 900 МБ. Хост-процесс - это исп…
03 дек '11 в 19:17
1
ответ
Почему система выделяет больше памяти при использовании указателей Windows?
Я использую HeapAlloc для выделения огромного объема памяти, например, 400 МБ, но когда я проверяю использование памяти моей программой, она действительно использует примерно 1 ГБ. //configuraciones.h #define ANCHO_MUNDO 5000 #define ALTO_MUNDO 5000…
14 авг '11 в 04:05
2
ответа
HeapAlloc возвращает 0xC0000017: недостаточно квоты
Я выделяю небольшое количество типов данных, общий размер 2 МБ. Я использую только одну кучу, и она работает нормально, пока я не получу определенное количество выделений, я почти уверен в этом, потому что я прокомментировал одно выделение для его с…
22 янв '10 в 03:07
4
ответа
Поиск безопасного магического числа для структуры данных в памяти
Я реализую распределитель кучи (malloc), и мне нужно выбрать магическое число, чтобы проверить, указывает ли данный указатель на структуру данных, которую я выделил. Мне кажется очевидным, что ни одно магическое число не может считаться полностью бе…
15 фев '11 в 18:46
3
ответа
HeapAlloc периодически прерывается
У нас есть DLL (созданная с использованием VC2005), которая выполняет некоторую обработку от имени вызывающего приложения. Эта обработка требует совсем немного памяти. DLL создает эту память через heapAlloc следующим образом: //Allocate space myStru…
05 авг '11 в 18:19
1
ответ
MASM - HeapAlloc выдает исключение
Я снова здесь. Я использую masm .dll в приложении C#, но теперь мой код выдает "System.AccessViolationException" в строке: INVOKE HeapAlloc, edx, 0, <size>Можете ли вы сказать мне, в чем причина проблемы? Вот мой код ASM: invoke GetProcessHeap…
17 янв '15 в 11:53
2
ответа
Есть ли принципиальная разница между malloc и HeapAlloc (кроме переносимости)?
У меня есть код, который по разным причинам я пытаюсь перенести из среды выполнения C на тот, который использует Windows Heap API. Я столкнулся с проблемой: если я перенаправить malloc/calloc/realloc/free звонки в HeapAlloc/HeapReAlloc/HeapFree (с G…
03 янв '11 в 21:45
2
ответа
Вызов malloc() из неуправляемой DLL, вызываемой из управляемой DLL, вызывает нарушение прав доступа
У меня есть набор тестов, написанных на C++/CLI, которые обращаются к нативной DLL для удаленного тестирования устройства Windows CE. В двух точках процесса настройки теста выделяется память в собственной куче - один раз для 512 байтов, другой для 5…
28 июн '11 в 22:43
1
ответ
HeapCreate и HeapAlloc путают
Я делаю проект по динамическому управлению памятью. Я запутался в функциях HeapCreate и HeapAlloc. Для функции HeapCreate() мы можем создать кучу, и функция вернет HANDLE. Мы можем инициализировать размер кучи. Допустим, winHandle = HeapCreate( 0, 2…
18 янв '13 в 20:06
7
ответов
Распределение памяти на код Windows C
Я хотел бы знать, какой метод рекомендуется при программировании на Windows C: используя malloc или функцию Win32 HeapAlloc (может быть VirtualAlloc?). Я прочитал статью о функциях управления памятью MSDN и статьи MSDN, касающиеся malloc и HeapAlloc…
28 окт '08 в 15:47