История изменений
Исправление a--, (текущая версия) :
при вставке - да. а при удалении никакого спуска уже нет.
Я думаю, что вопрос вовсе не в разнице вставка/удаление, а в другом.
Мы нашли случаи, когда удаление приводит к тому, что родитель неизвестен (это LRU и timer wheel), но для вставки такого примера пока что нет. Щас я попробую нарисовать свой, похожий на жизненный, пример.
Допустим у нас очередь заданий. И на каждое задание держится ссылка, поскольку это задание можно либо асинхронно удалить из очереди, либо асинхронно дополнить. Т.е. рядом с имеющимся заданием добавить новое. Например, задание содержит получение чего-то с хоста, а тут внезапно асинхронно выясняется, что ДНС-запись хоста протухла. И мы вставляем перед нашим заданием задание «отрезольвить ДНС».
Тут, понятно, возникнет вопрос «а почему бы нам тогда не отрезольвить ДНС сразу?». Потому что пример не жизненный, а нарисован. А хочется жизненный.
Исправление a--, :
при вставке - да. а при удалении никакого спуска уже нет.
Я думаю, что вопрос вовсе не в разнице вставка/удаление, а в другом.
Мы нашли случаи, когда удаление приводит к тому, что родитель неизвестен (это LRU и timer wheel), но для удаления такого примера пока что нет. Щас я попробую нарисовать свой, похожий на жизненный, пример.
Допустим у нас очередь заданий. И на каждое задание держится ссылка, поскольку это задание можно либо асинхронно удалить из очереди, либо асинхронно дополнить. Т.е. рядом с имеющимся заданием добавить новое. Например, задание содержит получение чего-то с хоста, а тут внезапно асинхронно выясняется, что ДНС-запись хоста протухла. И мы вставляем перед нашим заданием задание «отрезольвить ДНС».
Тут, понятно, возникнет вопрос «а почему бы нам тогда не отрезольвить ДНС сразу?». Потому что пример не жизненный, а нарисован. А хочется жизненный.
Исправление a--, :
при вставке - да. а при удалении никакого спуска уже нет.
Я думаю, что вопрос вовсе не в разнице вставка/удаление, а в другом.
Мы нашли, когда удаление приводит к тому, что родитель неизвестен (это LRU и timer wheel), но для удаления такого примера пока что нет. Щас я попробую нарисовать свой, похожий на жизненный, пример.
Допустим у нас очередь заданий. И на каждое задание держится ссылка, поскольку это задание можно либо асинхронно удалить из очереди, либо асинхронно дополнить. Т.е. рядом с имеющимся заданием добавить новое. Например, задание содержит получение чего-то с хоста, а тут внезапно асинхронно выясняется, что ДНС-запись хоста протухла. И мы вставляем перед нашим заданием задание «отрезольвить ДНС».
Тут, понятно, возникнет вопрос «а почему бы нам тогда не отрезольвить ДНС сразу?». Потому что пример не жизненный, а нарисован. А хочется жизненный.
Исходная версия a--, :
при вставке - да. а при удалении никакого спуска уже нет.
Я думаю, что вопрос вовсе не в разнице вставка/удаление, а в другом.
Мы нашли, когда удаление приводит к тому, что родитель неизвестен (это LRU и timer wheel), но для удаления такого примера пока что нет. Щас я попробую нарисовать свой, похожий на жизненный, пример.
Допустим у нас очередь заданий. И на каждое задание держится ссылка, поскольку это задание можно либо асинхронно удалить из очереди, либо асинхронно дополнить. Т.е. рядом с имеющимся заданием добавить новое. Например, задание содержит получение чего-то с хоста, а тут внезапно асинхронно выясняется, что ДНС-запись хоста протухла. И мы вставляем перед нашим заданием задание «отрезольвить ДНС».
Тут, понятно, возникнет вопрос «а почему нам не отрезольвить ДНС сразу?». Потому что пример не жизненный, а нарисован. А хочется жизненный.