Проверка памяти Malloc, если смежный

Достаточно просто написать собственную функцию сравнения:

function compare(a,b) {
  if (a.last_nom < b.last_nom)
    return -1;
  if (a.last_nom > b.last_nom)
    return 1;
  return 0;
}

objs.sort(compare);

Или встроенный (c / o Marco Demaio):

objs.sort(function(a,b) {return (a.last_nom > b.last_nom) ? 1 : ((b.last_nom > a.last_nom) ? -1 : 0);} ); 
0
задан Saswat Mishra 16 January 2019 в 05:55
поделиться

1 ответ

Если я понимаю ваш вопрос, вы спрашиваете, можете ли вы сделать несколько вызовов malloc для возврата непрерывной памяти.

Ответ - нет, память не будет смежной между несколькими malloc, так как большинство менеджеров памяти размещают данные head / tail вокруг выделенной памяти как для своего собственного управления, так и для размещения маркеров защиты по краям для обнаружения переполнений детали сильно зависят от реализации.

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

Вы можете посмотреть на этот проект github в качестве примера требуемого управления: https://github.com/bcorriveau/memblock

0
ответ дан csd 16 January 2019 в 05:55
поделиться
Другие вопросы по тегам:

Похожие вопросы: