Java: реинжиниринг параллелизма библиотеки с открытым исходным кодом

В рамках некоторого анализа структур JVM STM я рассматриваю вопрос о реорганизации механизмов блокировки библиотеки с открытым исходным кодом для использования вместо нее STM. Затем я бы провел несколько тестов, чтобы сравнить производительность, простоту кодирования и т. Д.

Очевидно, что тесты производительности должны были бы одобрить оптимистическую блокировку STM, но могут решить семантику этого позже.

Однако, на данный момент, я просто заинтересован в кандидатах в библиотеки с открытым исходным кодом. На ум приходит EhCache, поскольку он имеет внутренние меры блокировки.

Какие еще могут быть подходящие кандидаты?

1 ответ

Решение

Я бы предположил, что СТМ

  • производит более элегантный код, однако
  • это намного медленнее, чем разумное использование замков. Это может быть намного медленнее, чем медленное, чем написание однопоточного кода без блокировок.

Примечание. Переблокирование STM может привести к возникновению ситуации, похожей на тупик, когда он никогда не получит все необходимые блокировки.

Вы, вероятно, обнаружите, что STM слишком незрелый, чтобы обеспечить преимущества в производительности.

Другие вопросы по тегам