170 похожих чатов

31 ответов

12 просмотров

Думать? Хотя не, это точно не вариант

ssf-Defs Автор вопроса
Dmitriy [Отпуск]
Думать? Хотя не, это точно не вариант

Я бы отказался от такого варианта

ssf Defs
Я бы отказался от такого варианта

Оно и видно... Тесты не имеют отношения к допустимым ошибкам в рантайме (вроде неверного пользовательского ввода). Ассерты - тем более

ssf-Defs Автор вопроса
Dmitriy [Отпуск]
Оно и видно... Тесты не имеют отношения к допустим...

Создать искусственное место, где ошибку можно проанализировать, не?

ssf Defs
Создать искусственное место, где ошибку можно проа...

Ок, память не выделилась, "ошибку" нашли. Чинить невозможно - увольняемся

Вот это кстати вообще прекрасно, учитывая что в релиз-билд ассерт не попадает...

Пашечка
Вот это кстати вообще прекрасно, учитывая что в ре...

Ну разные ассерты бывают, можно и свой написать с логированием и завершением программы

我が名はレギオン
Ну разные ассерты бывают, можно и свой написать с ...

Справедливо. Но вернёмся к OOM. Логирование требует аллокацию сообщения. А как это сделать, если памяти нет?) Или надо записать инфу в файл, а у нас экспешн из-за того, что жёсткий диск с данными отвалился физически. Куда логировать?)

Пашечка
Справедливо. Но вернёмся к OOM. Логирование требуе...

В системный журнал, если есть такая возможность

Пашечка
Справедливо. Но вернёмся к OOM. Логирование требуе...

Если такие проблемы с памятью, то никуда, хотя кажется мне, что можно на месте освободить какую-то память, чтобы залогировать. Пользователь что ли будет сидеть над зависшим приложением, потому что вы обрабатываете эксешпен от нью? Ну нет памяти, что дальше? Ждать пока появится?

我が名はレギオン
Если такие проблемы с памятью, то никуда, хотя каж...

Вот представь себе твою любимую IDE, ты пытаешься открыть окно с настройками, а у тебя закончилась память, окошко не аллоцировалось, эксепшн от new не отловился и всё IDE упало, включая последние три минуты работы, где ты написал самый гениальный код в своей жизни, а автосохранение стоит с интервалом в 5 минут, то есть, гениальный код утерян. А могло быть просто, что даже с пустым try-catch эксепшн отловился и окошко тупо не создалось, при этом всё приложение не упало. Более того, возможны по мере раскручивания стека ещё и чуть-чуть памяти освободилось из-за вызванных деструкторов, и можно вывести сообщение об OOM.

Пашечка
Вот представь себе твою любимую IDE, ты пытаешься ...

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

我が名はレギオン
Под завершением имелось введу не terminate, все де...

Вопрос очень тонкий: а падать ли, скажем, если не удалось сохранить файл?)

我が名はレギオン
Под завершением имелось введу не terminate, все де...

Ситуация критичная, да. Поэтому падать нельзя! Может я пока оставлю всё как есть, а сам сбегаю за бумажкой и ручкой и быстро перепишу код с экрана на бумажку! Это ведь самый лучший код в моей жизни! Его потеря смерти подобна! А вообще, сколько боли было у студентов, когда диплом уничтожался почти весь после бессонной ночи из-за вот таких вот багов? Пожалейте студентов, пишите правильное и хорошее ПО)

Dmitriy [Отпуск]
Вопрос очень тонкий: а падать ли, скажем, если не ...

Зависит от причины, можно предложить пользователю выбрать другую директорию в случае проблем с какими-то правами/местом

Пашечка
Ситуация критичная, да. Поэтому падать нельзя! Мож...

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

Торчь Процессор
CTRL+S каждые 2 секунды, чего сложного

Под кнопку S попала чипсинка и она не нажимается.

Пашечка
Под кнопку S попала чипсинка и она не нажимается.

вешаем автосохранение на... любое событие с клавы

🐈
вешаем автосохранение на... любое событие с клавы

Чтобы (в обычной ситуации) заскочивший на клаву кот уничтожил мой прекрасный код?

Пашечка
Чтобы (в обычной ситуации) заскочивший на клаву ко...

окей. доббавим к автосохранению коммит. и пуш

🐈
окей. доббавим к автосохранению коммит. и пуш

Ну, тут мне уже нечего возразить) Только пуш лучше убрать, всё же, а при закрытии IDE настроить автосквош.

Пашечка
Ну, тут мне уже нечего возразить) Только пуш лучше...

мало ли твой прекрасный кот уничтожит твой прекрасный комп?

🐈
но умеет писать

Нет, он умеет только галопом скакать по клавиатуре

Пашечка
Нет, он умеет только галопом скакать по клавиатуре

окей. комп может быть уничтожен. метиорит в окно залетел.

🐈
окей. комп может быть уничтожен. метиорит в окно з...

Тогда код последнее, что меня волнует. Надо кота спасать!

Пашечка
Под кнопку S попала чипсинка и она не нажимается.

Ну пусть умирает тогда, кто вообще не делает бэкапы свой работы.

Пашечка
Справедливо. Но вернёмся к OOM. Логирование требуе...

>А как это сделать, если памяти нет?) Юзерспейсные обработчики нехватки памяти реагируют чуть заранее - когда память еще есть

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

Обсуждают сегодня

я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
96
читать файл максимально быстро? странный вопрос))
zamtmn
53
How to create an OS in C? what to study?
Linus
18
тоесть, указав return eax, сгенерируется никому ненужная инструкция mov eax,eax ?
Aiwan \ (•◡•) / _bot
24
Всем доброго вечера! Хочу поделиться своим злоключением с человеком, который, как оказалось сюда тоже скидывал свое резюме. Жаль, что я вашу группу не нашел раньше… человек ки...
Роман Ахмедзянов
4
Компания Elif ищет менеджера проектов, который будет заниматься поиском и ведением новых проектов. Прежде чем приступить к работе, вам нужно пройти наш недельный курс, где вы ...
Elif
5
Привет, кто может сделать юзербота с апи? Задачи: - создавать группы - создавать каналы - задавать для созданных каналов аватарку или эмоджи, имя группы - добавлять в группы...
Lencore
11
Вопрос вроде правильно, но что надо сделать, чтоб текст был виден нормально ? ghci> TE.decodeUtf8 $ TE.encodeUtf8 "test - проба" "test - \1087\1088\1086\1073\1072"
Fedor
7
а зачем этот вопрос для удаления из чата?
Mёdkinson Medvezhkin
63
Кто может подсказать? Я преобрпзовал изображение в бинарное(у меня установлен трекбар который при установленном значении меняет пиксели на белый если меньше и чёрный если боль...
Константин VS
5
Карта сайта