Вопросы с тегом 'allocation'

Распределение памяти - это операция, предоставляющая программе блок памяти.
25

Почему использование alloca() не считается хорошей практикой?

alloca() выделяет память в стеке, а не в куче, как в случае malloc(). Поэтому, когда я возвращаюсь из рутины, память освобождается. Итак, на самом деле это решает мою проблему освобождения динамически распределенной памяти. Освобождение памяти, выде...
19 июн. '09 в 16:24
3

Причудливый способ выделения двумерного массива?

В проекте кто-то нажал эту строку: double (*e)[n+1] = malloc((n+1) * sizeof(*e)); Что предположительно создает двумерный массив (n + 1) * (n + 1), удваивается. Предположительно, я говорю, потому что до сих пор никто, кого я попросил, не мог сказа...
22 апр. '16 в 12:43
3

В чем разница между [Class new] и [[Class alloc] init] в iOS?

Возможный дубликат: alloc, init и new в Objective-C Я немного запутался в [Class new] и [[Class alloc] init]. Я определил объект content с помощью [Class new] и [[Class alloc] init]. (1). NSMutableArray *content = [NSMutableArray new]; (2)....
29 июн. '12 в 4:53
10

Статический массив против динамического массива в С++

В чем разница между статическим массивом и динамическим массивом в С++? Мне нужно выполнить назначение для моего класса, и он говорит, что не использовать статические массивы, а только динамические массивы. Я посмотрел в книге и в Интернете, но, пох...
20 апр. '10 в 2:03
16

Определить размер динамически распределенной памяти в C

Есть ли способ в C, чтобы узнать размер динамически распределенной памяти? Например, после char* p = malloc (100); Есть ли способ узнать размер памяти, связанный с p?
15 авг. '09 в 11:21
3

Как профилировать использование памяти и производительность с помощью инструментов?

Из всех шаблонов Trace Tools я обожаю использовать: Зомби, чтобы обнаружить, где объект переизлучается, отлично подходит для отладки EXEC_BAD_ACCESS. Утечки для обнаружения утечек памяти. Core Animation w Color Blended Layers для определения час...
10 июл. '11 в 14:08
2

Объявить срез или сделать срез?

В Голанге в чем разница между var s []int и s := make([]int, 0)? Я считаю, что обе работы, но какая из них лучше?
28 авг. '14 в 7:51
3

Анализ Escape в Java

Насколько я знаю, JVM использует escape-анализ для некоторой производительности оптимизаций, например, блокировка и удержание. Мне интересно, есть ли возможность для JVM решить, что любой конкретный объект может быть выделен в стеке с помощью анализа...
21 апр. '09 в 7:21
8

Многопоточные блокировки памяти для C/С++

В настоящее время у меня многопоточное серверное приложение, и я обожаю хороший многопоточный распределитель памяти. До сих пор я разорван между: Sun umem Google tcmalloc Распределитель блоков Intel Threading Building Block Накопитель Эмери Бер...
29 сент. '08 в 2:13
11

Получение исключения при объявлении большого массива

Следующий код генерирует ошибку для меня int main(int argc, char* argv[]) { int sieve[2000000]; return 0; } Как мне обойти это? Я использую Turbo С++, но хочу сохранить свой код в C EDIT: Спасибо за совет. Код, приведенный выше, был толь...
21 февр. '09 в 2:10
4

Распределение памяти/освобождение?

В последнее время я смотрю на распределение памяти, и я немного смущен об основах. Мне не удалось обернуть голову про простые вещи. Что означает выделение памяти? Что происходит? Я бы оценил ответы на любой из этих вопросов: Где находится "память...
24 мар. '13 в 21:45
6

Всегда ли Structs выделяют выделенные или иногда кучу?

У меня создалось впечатление, что в С# элементы структуры выделяются в стеке и, таким образом, исчезают при возврате из метода, в котором они были созданы. Но что произойдет, если я поместим структурные значения в список и верну это? Элементы выживаю...
31 янв. '11 в 16:19
1

Можно ли удалить выделение ExecutionContext и Thread при использовании SocketAsyncEventArgs?

Если вы профилируете простое клиентское приложение, использующее SocketAsyncEventArgs, вы заметите Thread и ExecutionContext распределения. Источником распределений является SocketAsyncEventArgs.StartOperationCommon, который создает копию Executio...
12 авг. '14 в 17:04
3

Каков самый большой объем памяти, который я могу выделить на моем MacBook Pro?

Я пытаюсь выяснить, сколько памяти я могу выделить до того, как распределение не будет выполнено. Этот простой код на С++ выделяет буфер (размером 1024 байта), присваивает последние пять символов буфера, отчеты, а затем удаляет буфер. Затем он удваи...
30 дек. '16 в 17:38
7

В каких случаях я должен использовать memcpy над стандартными операторами в С++?

Когда я могу получить более высокую производительность с помощью memcpy или как мне это выгодно? Например: float a[3]; float b[3]; - код: memcpy(a, b, 3*sizeof(float)); быстрее, чем этот? a[0] = b[0]; a[1] = b[1]; a[2] = b[2];
28 дек. '10 в 8:50