Вопросы с тегом «memory»

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

135
Когда стоит форсировать сборку мусора?

Итак, я читал вопрос о том, как заставить сборщик мусора в C # запускать, когда почти все ответы одинаковы: вы можете сделать это, но не должны - за исключением некоторых очень редких случаев . К сожалению, никто не уточняет, что такое такие случаи. Можете ли вы сказать мне, по какому сценарию на...

107
Когда оптимизировать память по сравнению с быстродействием метода?

Я недавно давал интервью на Amazon. Во время сеанса кодирования интервьюер спросил, почему я объявил переменную в методе. Я объяснил свой процесс, и он предложил мне решить ту же проблему с меньшим количеством переменных. Например (это было не из интервью), я начал с метода A, а затем улучшил его...

99
Стек и куча памяти в Java

Насколько я понимаю, в Java стековая память содержит примитивы и вызовы методов, а кучевая память используется для хранения объектов. Предположим, у меня есть класс class A { int a ; String b; //getters and setters } Где будет храниться примитив aв классе A? Почему куча памяти вообще существует?...

84
Почему числа с плавающей запятой по-прежнему являются частью языка Java, когда вместо них чаще всего используются двойные числа?

В каждом месте, где я смотрел, написано, что doubleоно превосходит floatпочти во всех отношениях. floatбыл сделан устаревшим doubleв Java, так почему он все еще используется? Я много программирую на Libgdx, и они вынуждают вас использовать float(deltaTime и т. Д.), Но мне кажется, что с ними...

62
Вы имели дело с космической закалкой?

Я очень хочу изучать лучшие практики, когда дело доходит до космической закалки. Например, я прочитал (хотя я больше не могу найти статью), что некоторые основные части марсоходов не использовали динамическое распределение памяти, фактически это было запрещено. Я также читал, что старомодная память...

51
Можно ли считать «ошибку уровня 256» в игре Pacman необработанным сегфоутом?

Я пытаюсь объяснить кому-то ошибки сегментации, и я размышлял об уровне экрана уничтожения 256 в Pacman, и о том, как он вызывается целочисленным переполнением, и о том, как поведение похоже на «неизвестное состояние», часто описываемое в сегментации неисправность. Я хочу сказать, что это хороший...

46
Почему мы все еще наращиваем стек назад?

При компиляции кода C и просмотре сборки, все это имеет стек, растущий в обратном направлении, вот так: _main: pushq %rbp movl $5, -4(%rbp) popq %rbp ret -4(%rbp)- означает ли это, что базовый указатель или указатель стека фактически перемещаются вниз по адресам памяти, а не идут вверх? Почему это?...

39
Где хранятся нулевые значения или они хранятся вообще?

Я хочу узнать о нулевых значениях или нулевых ссылках. Например, у меня есть класс под названием Apple, и я создал его экземпляр. Apple myApple = new Apple("yummy"); // The data is stored in memory Затем я съел это яблоко, и теперь оно должно быть нулевым, поэтому я установил его как нулевое....

39
В C ++ сколько времени программист тратит на управление памятью

Люди, которые привыкли собирать языки, часто боятся управления памятью в C ++. Существуют такие инструменты, как auto_ptrи shared_ptrкоторые будут выполнять многие задачи по управлению памятью для вас. Множество библиотек C ++ предшествуют этим инструментам и имеют собственный способ обработки...

38
В чем разница между переменной и местом в памяти? [закрыто]

Недавно я пытался объяснить указатели наглядно, как карточки. Вопрос 001: это рисунок места в памяти компьютера. Это правда, что его адрес 0x23452? Зачем? Ответ: Да, потому что 0x23452описывает, где компьютер может найти это место. Вопрос 002: правда ли, что персонаж bхранится в ячейке памяти...

32
Производительность кода ADT, ориентированного на одно назначение, на современных процессорах

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

30
Если число слишком большое, оно перетекает в следующую ячейку памяти?

Я изучал программирование на Си, и меня беспокоит всего пара вещей. Давайте возьмем этот код для примера: int myArray[5] = {1, 2, 2147483648, 4, 5}; int* ptr = myArray; int i; for(i=0; i<5; i++, ptr++) printf("\n Element %d holds %d at address %p", i, myArray[i], ptr); Я знаю, что int может...

29
Почему строковые литералы C доступны только для чтения?

Какие преимущества строковых литералов, являющихся доступными только для чтения, оправдывают (-ies / -ied): Еще один способ выстрелить себе в ногу char *foo = "bar"; foo[0] = 'd'; /* SEGFAULT */ Невозможность элегантной инициализации массива слов для чтения и записи в одну строку: char *foo[] = {...

27
Что такое регистры процессора?

Этот вопрос беспокоит меня в течение некоторого времени, и сегодня я решил, что я буду Google это. Я читал кое-что об этом, и это казалось очень похожим на то, что я всегда называл кешем процессора . Есть ли разница между двумя или я прав, когда думаю, что они одинаковы? Действительно ли регистр...

27
Можно ли статически предсказать, когда освободить память - только из исходного кода?

Память (и блокировки ресурсов) возвращаются в ОС в детерминированных точках во время выполнения программы. Поток управления программой сам по себе достаточен, чтобы знать, где, без сомнения, данный ресурс может быть освобожден. Точно так же, как человек-программист знает, куда писать,...

26
Можно ли считывать память из другой программы, выделяя все пустое пространство в системе?

Теоретически, если бы я создал программу, которая бы выделяла всю неиспользуемую память в системе и продолжала запрашивать все больше и больше памяти, поскольку другие приложения освобождали память, которая им больше не нужна, было бы возможно читать недавно освобожденную память из других...

23
Отладка повреждения памяти

Прежде всего, я понимаю, что это не идеальный вопрос в стиле вопросов и ответов с абсолютным ответом, но я не могу придумать какую-либо формулировку, чтобы она работала лучше. Я не думаю, что есть абсолютное решение для этого, и это одна из причин, почему я публикую это здесь вместо переполнения...

23
Демонстрация сборки мусора быстрее, чем ручное управление памятью

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