Size: a a a

cxx.Дискуссионная

2020 April 05

AZ

Alexander Zaitsev in cxx.Дискуссионная
Егор
я не пойму, куда мне нужно в рецепте скопировать инклюд папку либы, чтобы я мог ее с треугольными скобками инклюдить?
просто экспортишь и всё - инклуды треугольные начинают работать
источник

RM

Roy Mustang in cxx.Дискуссионная
Mikail Bagishov
Можно разбить задачи на куски по  T штук. Каждый кусок хранить в векторе, отсортированном по времени.
Тогда итерироваться придется по вектору, то есть с низкой константой.
А вставка будет не очень дорогой
Имеешь в виду, создать вектор в векторе? Например, у нас есть вектор A в котором хранится вектор B, а вектор B хранит список задач. Теперь,, каждый раз когда мы добавляем задачу, мы должны итерироваться по вектору A, получая каждый элемент (тобиь, вектор B), а из вектора B мы вытаскиваем первый и последний элемент и сравниваем время
источник

AZ

Alexander Zaitsev in cxx.Дискуссионная
посмотри в рецептах, куда экспортят. они экспортят в include и всё
источник

IO

Igor Okhremchuk in cxx.Дискуссионная
Roy Mustang
Есть еще одна идея
Рой, есть системы типа бсд, которые спроектированы с таким четким академическим подходам, и к ним куча документации с описанием всех возможных идей для решения определённых задач
источник

RM

Roy Mustang in cxx.Дискуссионная
То есть, сортировать придется только группы куда задача попадает
источник

AZ

Alexander Zaitsev in cxx.Дискуссионная
Igor Okhremchuk
Рой, есть системы типа бсд, которые спроектированы с таким четким академическим подходам, и к ним куча документации с описанием всех возможных идей для решения определённых задач
чукча не читатель, чукча писатель
источник

RM

Roy Mustang in cxx.Дискуссионная
Igor Okhremchuk
Рой, есть системы типа бсд, которые спроектированы с таким четким академическим подходам, и к ним куча документации с описанием всех возможных идей для решения определённых задач
Что за система?
источник

IO

Igor Okhremchuk in cxx.Дискуссионная
Что за система бсд? Ты серьезно?
источник

AZ

Alexander Zaitsev in cxx.Дискуссионная
Roy Mustang
Что за система?
Free/Open/DragonFly/etc. BSD
источник

RM

Roy Mustang in cxx.Дискуссионная
Alexander Zaitsev
Free/Open/DragonFly/etc. BSD
Понял
источник

MB

Mikail Bagishov in cxx.Дискуссионная
Roy Mustang
То есть, сортировать придется только группы куда задача попадает
Только лучше не сортировать, а как-то так:
auto inserion_pos = lower_bound(chunk.begin(), chunk.end(), new_task);
chunk.insert(insertion_pos, new_task);
источник

RM

Roy Mustang in cxx.Дискуссионная
Mikail Bagishov
Только лучше не сортировать, а как-то так:
auto inserion_pos = lower_bound(chunk.begin(), chunk.end(), new_task);
chunk.insert(insertion_pos, new_task);
Там такое не прокатит, у меня в векторе хранится не время выполнения, а объекты класса Task
источник

RM

Roy Mustang in cxx.Дискуссионная
Я же должен где то хранить помимо времени еще и функцию обратного вызова и кол-во повторных выполнений задачи
источник

MB

Mikail Bagishov in cxx.Дискуссионная
Но ты же можешь перегрузить для них operator<, сравнивающий по времени выполнения?
источник

RM

Roy Mustang in cxx.Дискуссионная
Mikail Bagishov
Но ты же можешь перегрузить для них operator<, сравнивающий по времени выполнения?
В общем, ты считаешь что это хорошая идея? Сортировать лишь отдельные группы задач
источник

RM

Roy Mustang in cxx.Дискуссионная
Это действительно сэкономит время, которое тратится на итерации и сортировку
источник

MB

Mikail Bagishov in cxx.Дискуссионная
В зависимости от количества вставое и количества "интересных" задач - может быть хорошей, а может и плохой
источник

MB

Mikail Bagishov in cxx.Дискуссионная
Например, если вставок много, а "интересных" задач мало, то этот подход неэффективен.
Например если у тебя 1000 очередей, а события возникают пачками по 10 штук, то большая часть времени каждой итерации будет уходить тупо на перебор всех очередей
источник

RM

Roy Mustang in cxx.Дискуссионная
Mikail Bagishov
Например, если вставок много, а "интересных" задач мало, то этот подход неэффективен.
Например если у тебя 1000 очередей, а события возникают пачками по 10 штук, то большая часть времени каждой итерации будет уходить тупо на перебор всех очередей
Меня другое беспокоит, сколько изначально должно быть элементов в родительском векторе?
источник

RM

Roy Mustang in cxx.Дискуссионная
Имею в виду, сколько векторов должно быть в векторе
источник