Публикации по теме '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 просмотров
schedule
22.07.2023
Когда переходить по ссылке не рекомендуется?
Это проблема распределения памяти, которую я никогда не понимал.
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 просмотров
schedule
24.05.2022
Почему какао иногда возвращает пустую строку?
В моем приложении есть код, который выглядит примерно так:
char *hash = (char*) sqlite3_column_text(get_bookmark, 0);
NSString* postHash = [NSString stringWithUTF8String:hash];
У меня это работает каждый раз; Я никогда не видел, чтобы это...
1970 просмотров
schedule
28.03.2022
Как решить ошибку записи о нарушении прав доступа?
У меня есть простая программа, и я получаю нарушение прав доступа по адресу *(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 просмотров
schedule
14.11.2023
Будет ли пустой делегат потреблять память?
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 просмотров
schedule
30.09.2022
Улучшения для этого распределителя стека 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 просмотров
schedule
20.02.2022
Как найти причину ошибки malloc double free?
Я программирую приложение на Objective-C и получаю такую ошибку:
MyApp (2121,0xb0185000) malloc: ** ошибка для объекта 0x1068310: двойной свободный *** установить точку останова в malloc_error_break для отладки
Это происходит, когда я...
75906 просмотров
schedule
19.06.2022
Где используются алгоритмы управления памятью?
Существует набор алгоритмов управления памятью, используемых при построении операционной системы, таких как разбиение на страницы, сегментация, разбиение на страницы (paginación segmentada), разбиение на сегменты (segmentación paginada) и другие....
931 просмотров
schedule
01.10.2023