Разрушитель LMAX в Python

Есть ли уже реализация (или хотя бы привязка) к Python3?

Я вижу, что оригинальная реализация на Java есть на Github, но я ничего не вижу для Python3.


person spam    schedule 23.11.2019    source источник


Ответы (1)


простая реализация на основе cython обеспечивается каналом данных:

person Andrei Pozolotin    schedule 09.12.2019
comment
1) Нет, это не полноценный дизраптор, скорее демонстрация возможностей. 2) по дизайну нет атомарности/блокировки 3) да, есть барьеры памяти, см. native_any.h. 4) Внутри мы разработали вариант с одним производителем / несколькими потребителями, по-прежнему не требующий атомарности / блокировки, работает как с профилем между потоками, так и с профилем между процессами. - person Andrei Pozolotin; 28.02.2020
comment
Плохо, я недостаточно тщательно проанализировал структуру кода. Не знаком с расширениями Cython, файлы *.pxd и *.pyx меня смутили :) - person Aleksei Petrenko; 03.03.2020
comment
После повторной проверки native_any.h и native_any.pxd определяют native_bool_compare_swap_int для предоставления встроенной функции компилятора GCC. Но насколько я могу судить, эта функция никогда не используется ни в одном другом файле. То же самое для native_synchronize. Не могли бы вы объяснить, как это работает? - person Aleksei Petrenko; 05.03.2020