Любое название для этой концепции? - PullRequest
4 голосов
/ 12 марта 2009

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

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

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

Что важно, мы знаем схему, в которой эти события обычно происходят. Например: их относительная частота относительно друг друга или общий порядок и интервалы времени, в которые они происходят.

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

Существует ли концепция разработки таких алгоритмов?


Пример:

Интернет-браузер с вкладками.

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

(я ничего не знаю о том, как на самом деле работают браузеры, но при условии, что это так, не повредит)

Ответы [ 4 ]

8 голосов
/ 12 марта 2009

Я думаю, алгоритмы планирования имеют дело с такими сценариями.

4 голосов
/ 12 марта 2009

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

0 голосов
/ 12 марта 2009

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

0 голосов
/ 12 марта 2009

Я подбрасываю ключевые слова: Планирование с упреждением ? Также предварительная выборка с двойной буферизацией

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...