The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Выпуск earlyoom 1.2, процесса для раннего реагирования на не..."
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]
Заметили полезную информацию ? Пожалуйста добавьте в FAQ на WIKI.
. "Выпуск earlyoom 1.2, процесса для раннего реагирования на не..." +/
Сообщение от тот самый аноним (?), 06-Ноя-18, 18:22 
> а что по-твоему современный программист может сделать?
> "проверять malloc на null"? Так это показатель некомпетентности.

О, опять пошли байки о вездесущности overcommit и "современный malloc никогда не возвратит 0"?


# rctl -h
user:restricted:vmemoryuse:deny=1024M/process
user:restricted:memoryuse:deny=512M/process
user:restricted:swapuse:deny=1024M
% uname -rs;whoami && cat test.c && ./test|tail
FreeBSD 11.2-STABLE
restricted
#include <stdio.h>
#include <errno.h>
#include <stdlib.h>

#define MB (1024*1024)
#define PSIZE 4096
int main(void){
    size_t sum = 0;
    char *ptr;
    for (size_t i=0;;i++) {
        if ((ptr = malloc(MB)) == NULL) {
            perror("Err:");
            exit(EXIT_FAILURE);
        }
        for (size_t j = 0;j < (MB-PSIZE-1); j += PSIZE) ptr[j] = 0;
        sum += MB;
        printf("allocated: %zu MB\n", sum/MB);
    }
    return EXIT_SUCCESS;
}
allocated: 497 MB
allocated: 498 MB
allocated: 499 MB
allocated: 500 MB
allocated: 501 MB
allocated: 502 MB
allocated: 503 MB
allocated: 504 MB
allocated: 505 MB
allocated: 506 MB
Err:: Cannot allocate memory


Ответить | Правка | Наверх | Cообщить модератору

Оглавление
Выпуск earlyoom 1.2, процесса для раннего реагирования на не..., opennews, 04-Ноя-18, 19:14  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру