Я пытаюсь понять шаблон дизраптора . Я смотрел видео InfoQ и пытался прочитать их статью. Я понимаю, что здесь задействован кольцевой буфер, который инициализируется как чрезвычайно большой массив, чтобы использовать локальность кеша и исключить выделение новой памяти.
Похоже, существует одно или несколько атомарных целых чисел, отслеживающих позиции. Кажется, что каждое «событие» получает уникальный идентификатор, и его положение в кольце определяется путем нахождения его модуля по отношению к размеру кольца и т. Д. И т. Д.
К сожалению, у меня нет интуитивного ощущения как это устроено. Я выполнил множество торговых приложений и изучил модель акторов , посмотрел на SEDA и т. Д.
В своей презентации они упомянули, что этот шаблон в основном определяет принцип работы маршрутизаторов; однако я не нашел хороших описаний того, как работают маршрутизаторы.
Есть ли какие-нибудь хорошие указатели на лучшее объяснение?