2012-02-06 3 views
18

Мне жаль, что я не могу получить примерный примерный код, в котором будет показано, как использовать LMAX disruptor (http://code.google.com/p/disruptor/).Самый простой и фактический пример кода LMAX Disruptor

К сожалению, каждый фрагмент кода устарел. Кто-нибудь знает, где я могу найти небольшое и актуальное руководство (предпочтительнее без DSL)?

ответ

15

вы можете увидеть пример здесь.

http://code.google.com/p/disruptor/wiki/CodeExampleDisruptor2x

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

+2

Этот пример кода устарел, ValueEntry не может найти в Disruptor 2.10, где можно найти новейший Disr uptor, если лучше 2.8+! Спасибо! – LiuTiger

+0

ValueEvent не является классом библиотеки disruptor. Это ваш класс, который используется для «удержания» вашего фактического события или сообщения. Затем фабрика событий используется для предварительного создания экземпляров ValueEvent и установки кольцевого буфера. Когда приходит ваше сообщение или событие, вы получаете один из созданных экземпляров, вы устанавливаете на нем свое сообщение и говорите о публикации. Затем кольцевой буфер отправляет его обработчикам. – Abe

19

Вот простой, запускаемый пример использования библиотеки Disruptor. Пример написан на Java с использованием версии 2.10.4 библиотеки Disruptor.

https://github.com/trevorbernard/disruptor-examples

+0

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

+0

удивительный пример – nilesh

3

Sharing пример с несколькими издателями и прикованных обработчиков, это использует их последний доступный формат DSL апи http://vijayrc.com/vectorclocks/post/thread3

Смежные вопросы