Здравствуйте, vdimas, Вы писали:
V>Странный вопрос. V>При анализе проблематики обычно сначала рассматриваются уже имеющиеся способы решения (если есть), выясняется степень их подходящести под условия задачи и т.д.
Нормальный вопрос. Вас спросили, как вы предполагаете решить определённую задачу. Вы начали предлагать некий способ, и тут же оговорились, что он не подходит.
Можно было не лезть в подробности, а сразу перейти к тем способам, которые вы считаете уместными.
V>Какое именно неадекватное решение я предлагал и почему оно неполное-то? ))
Неадекватное решение — реализация набора видов блокировок в СУБД через самописанный семафор, поддерживающий отрицательные значения счётчиков. Неадекватное оно по вашим же словам.
А неполное оно потому, что вы не показали ни API, ни реализацию такого семафора.
V>Речь была про то, что характеристики такого решения будут далеки от желаемых.
Покажите решение с характеристиками, которые близки к желаемым. V>А ты, насколько я заметил, вместо рассуждений о соотвествии встроенных ср-в ОС задачам обыгрывания нетривиальных иерархий блокировок, рассуждаешь "там всё сложно" (С).
Эмм, меня вообще не очень интересует соответствие встроенных в ОС средств. Интересует совершенно банальный вопрос: как будет выглядеть код выполнения запроса.
Можно показать это на lock-free, можно на примитивах ОС, можно на какой-то комбинации. Делов-то. Вы утверждали, что вам хватит одной интерлокед-операции для скана таблицы. Мне это утверждение кажется очевидной чушью, но я могу заблуждаться. Поэтому мне хочется увидеть примерный код того, как это чудо будет реализовано. А вы вместо того, чтобы показать своё решение, растекаетесь мыслью по древу, пытаясь меня запугать очередями, СМО, и прочими не относящимися к задаче темами.
V>Когда/если будешь "упражняться" — стоит держать в голове, что блокировки не цель, но лишь способ упорядочивания изначально хаотичного конкурентного трафика заявок. V>Т.е. целью является именно диспетчеризация заявок, где "блокировки" — вспомогательный механизм.
Целью является обеспечение ACID. Я не вижу хорошего способа его обеспечить без блокировок.
Уйдемте отсюда, Румата! У вас слишком богатые погреба.