Публикации по теме 'memory-management'


Управление памятью в Python: сборщик мусора
В этом сообщении блога я объясню, что такое интерфейс сборщика мусора (gc), а также расскажу о его самых основных функциях. Этот модуль предоставляет интерфейс для дополнительного сборщика мусора. Он предоставляет возможность отключить сборщик, настроить частоту сбора и установить параметры отладки. Он также обеспечивает доступ к недоступным объектам, которые сборщик нашел, но не может освободить. Поскольку…

Управление памятью Spark [до версии 1.6.0]
Модель управления памятью Spark, описанная в этой статье, устарела в Apache Spark v1.6.0+, ссылку на новую модель памяти можно найти в этой статье . Вот схема распределения памяти Spark внутри кучи JVM в соответствии с моделью управления памятью до Apache Spark v1.6.0: Давайте разберемся, что это за разные компоненты один за другим: Безопасная куча . Любой процесс Spark, работающий в кластере или на локальном компьютере, является процессом JVM. Как и для любого процесса JVM,..

Добавление единицы к очень большому количеству!
Допустим, вам нужно прибавить единицу к очень большому числу, например, x. Добавить единицу к любому числу довольно просто. Вам просто нужно увеличить младшую цифру числа на единицу. Прежде чем продолжить обсуждение, давайте обсудим, насколько велико это число на самом деле и как мы собираемся его хранить. Ограничения по хранению номера Мы можем хранить наше число x в массиве, при этом каждый индекс массива хранит цифры числа. Поскольку мы используем здесь массив, величина..

Вопросы по теме 'memory-management'

Инструменты для визуального анализа использования памяти приложением PHP
Есть ли что-нибудь бесплатное или коммерческое, что может облегчить анализ использования памяти приложением PHP? Я знаю, что xdebug может создавать файлы трассировки, которые показывают использование памяти вызовом функции, но без графического...
15237 просмотров
schedule 18.07.2022

Деструкторы синглтона
Должны ли объекты Singleton, которые не используют счетчики экземпляров/ссылок, считаться утечками памяти в C++? Без счетчика, который вызывает явное удаление экземпляра синглтона, когда счетчик равен нулю, как удаляется объект? Очищается ли ОС...
26024 просмотров
schedule 09.12.2023

Как я могу зарезервировать память для указателя на массив в Delphi?
Я разрабатываю класс для представления особого вида матрицы: type DifRecord = record Field: String; Number: Byte; Value: smallint; end; type TData = array of array of MainModule.DataRecord; type TDifference = array of...
2095 просмотров
schedule 02.02.2023

Выделяется ли этот тип памяти в куче или стеке?
В контексте С++ (не то, чтобы это имело значение): class Foo{ private: int x[100]; public: Foo(); } То, что я узнал, говорит мне, что если вы создадите экземпляр Foo следующим образом: Foo bar = new Foo();...
1440 просмотров
schedule 29.01.2023

Поиск использования памяти в Java
Ниже приведен сценарий, который мне нужно решить. Я нашел два решения. Мне нужно поддерживать кеш данных, извлеченных из базы данных, для отображения в графическом интерфейсе Swing. Всякий раз, когда моя память JVM превышает 70% выделенной...
9385 просмотров

Когда переходить по ссылке не рекомендуется?
Это проблема распределения памяти, которую я никогда не понимал. void unleashMonkeyFish() { MonkeyFish * monkey_fish = new MonkeyFish(); std::string localname = "Wanda"; monkey_fish->setName(localname); monkey_fish->go();...
2570 просмотров
schedule 14.03.2022

Как очистить кеши, используемые ядром Linux
Я хочу заставить ядро ​​Linux выделять больше памяти приложениям после того, как кеш начинает занимать слишком много памяти (как видно из вывода «бесплатно»). Я бегал sudo sync; sudo sysctl -w vm.drop_caches=3; free (чтобы освободить как...
35872 просмотров

Почему какао иногда возвращает пустую строку?
В моем приложении есть код, который выглядит примерно так: char *hash = (char*) sqlite3_column_text(get_bookmark, 0); NSString* postHash = [NSString stringWithUTF8String:hash]; У меня это работает каждый раз; Я никогда не видел, чтобы это...
1970 просмотров

Как решить ошибку записи о нарушении прав доступа?
У меня есть простая программа, и я получаю нарушение прав доступа по адресу *(str + start) . Почему? Я должен быть в состоянии изменить это. Верно? void fn() { char *str = "Hello wordl!"; int end = strlen(str); int start = 0;...
67438 просмотров
schedule 13.06.2023

Почему у NSNumber такие странные keepCounts?
NSNumber* n = [[NSNumber alloc] initWithInt:100]; NSNumber* n1 = n; Почему в приведенном выше коде для параметра keepCount n установлено значение 2? Во второй строке кода я не использовал keep для увеличения количества keepCount. Я...
5317 просмотров
schedule 27.04.2022

Использование памяти модулем ядра
При попытке оценить объем памяти, потребляемой модулем ядра (обычно драйверами устройств), я попытался использовать утилиту size , которая выдавала размер областей статической памяти файлов .ko ( .bss, . данные, .текст и т. д.). Поэтому я ожидал,...
10776 просмотров

Будет ли пустой делегат потреблять память?
public sealed class FtpManager { public event EventHandler LoggingIn = delegate { }; private void OnLoggingIn(object sender, EventArgs e) { var handler = LoggingIn; handler(sender, e); } // ... } В приведенном...
1315 просмотров
schedule 12.07.2023

Почему не удалить указатель на NULL?
Меня всегда интересовало, почему автоматическая установка указателя на NULL после delete не является частью стандарта. Если об этом позаботятся, то многих сбоев из-за неправильного указателя не произойдет. Но, сказав это, я могу придумать пару...
55048 просмотров
schedule 06.06.2022

Лучший способ справиться с распределением памяти в C?
Я думаю, что хорошо разбираюсь в том, как обрабатывать память на C ++, но делать это на C - другое дело. Я немного не в себе. В C ++ у меня есть конструкторы и деструкторы, у меня есть довольно простые команды new и delete, и я знаю, как...
11176 просмотров
schedule 13.02.2022

Многомерный массив (С++)
Я пытаюсь сохранить указатель в массиве. Мой указатель на указатель - это объект класса: classType **ClassObject; Итак, я знаю, что могу выделить его с помощью нового оператора следующим образом: ClassObject = new *classType[ 100 ] =...
3505 просмотров

Улучшения для этого распределителя стека C++?
Любые предложения для моего распределителя на основе стека? (За исключением предложений использовать класс с закрытыми/открытыми членами) struct Heap { void* heap_start; void* heap_end; size_t max_end; Heap(size_t size) {...
5979 просмотров
schedule 17.05.2022

Нужно ли мне вызывать GC.KeepAlive (this) в моем методе Dispose?
В этом вопросе @Jon skeet ссылается на это старая запись в блоге автора Криса Брамме. Мне было интересно, нужно ли мне следовать за всеми вызовами GC.SuppressFinalize(this) с помощью GC.KeepAlive(this) , чтобы избежать странных условий...
923 просмотров
schedule 10.12.2022

Использование памяти WPF
Применение: Приложение WPF, состоящее из текстового поля вверху и списка внизу Пользователи вводят строку в текстовое поле для поиска сотрудников, а результаты поиска отображаются в ListBox. ListBox использует DataTemplates для отображения...
18196 просмотров

Как найти причину ошибки malloc double free?
Я программирую приложение на Objective-C и получаю такую ​​ошибку: MyApp (2121,0xb0185000) malloc: ** ошибка для объекта 0x1068310: двойной свободный *** установить точку останова в malloc_error_break для отладки Это происходит, когда я...
75906 просмотров

Где используются алгоритмы управления памятью?
Существует набор алгоритмов управления памятью, используемых при построении операционной системы, таких как разбиение на страницы, сегментация, разбиение на страницы (paginación segmentada), разбиение на сегменты (segmentación paginada) и другие....
931 просмотров
schedule 01.10.2023