-
Notifications
You must be signed in to change notification settings - Fork 360
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Ready] ValoisList #107
base: master
Are you sure you want to change the base?
[Ready] ValoisList #107
Conversation
Добрый день! Хотелось бы получить Code Review контейнера. |
Это похвально, но самых главных тестов - многопоточных (stress) - я не вижу. Unit - это однопоточные тесты проверки интерфейса, их смысл в том, чтобы вызвать все public-методы контейнера с различными параметрами. Если коротко - их смысл в том, что все компилируется и работает как надо.
Хотели - получайте ;-) - HP guard не должен быть data member. Он всегда должен объявляться локально в функции. Почему?.. На этот вопрос вы должны ответить сами ;-)
Так в этом и заключается соль работы, по сути. Min необходимое число HP - это свойство алгоритма контейнера. Сколько вам одновременно нужно защищать указателей в одной функции - столько и нужно HP. Так что это ВЫ должны сказать |
Коллеги, когда ставите [Ready], удаляйте хотя бы кучи закомментированного кода. + в тестах потоки лаконичнее всё же создавать в цикле |
Готово |
Начали работу, нужно пояснить пару моментов.
Тема работы:
John D. Valois Lock-Free Linked Lists Using Compare-and-Swap
http://people.csail.mit.edu/bushl2/rpi/portfolio/lockfree-grape/documents/lock-free-linked-lists.pdf