Size: a a a

var chat = new Chat();

2021 September 21

YF

Your FavBoy in var chat = new Chat();
упс, тут же низя свои
источник

YF

Your FavBoy in var chat = new Chat();
источник

D

Dmitry in var chat = new Chat();
у visicom классное апи было
источник

rr

razumovsky r in var chat = new Chat();
источник
2021 September 22

VB

Vladislav Bardin in var chat = new Chat();
Знаю, что то, что я пытаюсь сделать это фигня, которую делать не стоит, но все же, такое задание лабы.

Мне нужно ограничить кол-во памяти, которое может использовать приложение и время, которое приложение(поток, дочерний процесс или Task) может выполняться. Дословно задача стоит так: "Передбачити можливість обмеження виконання програми за часом (30 хвилин) та використання пам’яті (512 Мб)"

Я вижу 2 варианта, но оба мне не очень нравятся.
1. Запускать анализ доски в Task<T> и тогда можно будет прокинуть cancellationToken это ограничит время. И тут возникает вопрос, а как ограничить память для Task'a. Есть вариант дергать метод GC.GetAllocatedBytesForCurrentThread, но это выглядит как-то костыльненько.
2. Создавать новый дочерний процесс, что выглядит не очень хорошо, т.к. процессы довольно тяжелые и не удобные. И тогда нужно будет городить, что-то для трека времени. Зато, можно дернув WinApi ограничить память.

Может, есть какой-то более лаконичный вариант, который позволит избежать оверхеда?)
источник

MN

Mr. N in var chat = new Chat();
це ця програма для генерації шахів на досці?
источник

SC

Serega Carbon in var chat = new Chat();
ясно, универ начался))0
источник

VB

Vladislav Bardin in var chat = new Chat();
Да. Там прикол в том, что может очень долго выполнять и нужно как-то ограничить
источник

E

Etki in var chat = new Chat();
Спавнить новый процесс более чем корректный метод для выставления ограничений. Но от тебя скорее хотят что-то, что было прямо описано в теоретической части, и там может быть что угодно.
источник

VB

Vladislav Bardin in var chat = new Chat();
А с ним и невменяемое кол-во конченых задач, которые ничего общего с реальностью не имеют. Вот схерали мне в реальной жизни ограничивать память?!
источник

MN

Mr. N in var chat = new Chat();
Ну це тіпа він каже  що це має бути нормально написано і бисро виконуватися наскільки я поняв
источник

SC

Serega Carbon in var chat = new Chat();
КПИ?
источник

VL

Vova Lantsov in var chat = new Chat();
Можно в докер засунуть и на его уровне ограничить
источник

VB

Vladislav Bardin in var chat = new Chat();
Да)
источник

E

Etki in var chat = new Chat();
Но если бы у меня стояла рабочая задача жестко ограничить задачу по памяти - да, однозначно спавнить новый процесс и выставлять ограничения на уровне ОС / рантайма
источник

SC

Serega Carbon in var chat = new Chat();
а не слишком ли оверхедно для лабы с универа))
источник

VB

Vladislav Bardin in var chat = new Chat();
Как вариант, но тогда нужно будет еще сделать, чтобы докер запускался 20 раз
источник

VB

Vladislav Bardin in var chat = new Chat();
там нужно не менее 20 экспериментов провести
источник

MN

Mr. N in var chat = new Chat();
Я думаю алгоритм має виконатися менше чи за пів часа
источник

VL

Vova Lantsov in var chat = new Chat();
Ну для меня нет, я это уже во сне делаю на автомате)
источник