Andrey Gulin (_foreseer) wrote,
Andrey Gulin
_foreseer

Category:

Lock-free, продолжение

Когда-то я рассказывал про lock-free Не прошло и года Прошло 1.5 года и ошибку в предложенном тогда коде нашли. Хорошо, но медленно. Предлагаю попробовать повторить. На этот раз предлагается lock free FIFO очередь, сделанная по тому же принципу. Ищем ошибку (ABA/race/leak) и способ ее исправить. Для ускорения поисков объявляется приз! Первому нашедшему предлагаю бутылку коньяка. Непьющим - эквивалент в березовом соке :)

эта бутылка могла быть моей!

А вообще, скорость lock-free алгоритмов прямо пропорциональна количеству использованных atomic-ов, поэтому при наличии cmpxch16b лучше пользоваться им - быстрее будет работать.

Update Первым ошибку нашел наш внимательный читатель из города Бердск evgeny_baskakov. Евгений решил перечислить свой приз на благотвоорительность, так что приз ушел сюда, с чем всех и поздравляю!
Subscribe
  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic
  • 35 comments