Методы безопасного освобождения памяти в lock-free структурах данных (Андрей Кашин 2016.11.23)

13 подписчиков

12+
12+

2 просмотра

13 дней назад

ПожаловатьсяНарушение авторских прав

13 подписчиков

12+
12+

2 просмотра

13 дней назад

ПожаловатьсяНарушение авторских прав
12+
12+

2 просмотра

13 дней назад

Первая часть: https://www.youtube.com/watch?v=VW9qvF1jJIg&list=PLuWypj7F_mQlIBhQwfb8qgRjI-qZuJx1U Источник: https://cotass.wordpress.com/2016/11/25/%d0%bc%d0%b5%d1%82%d0%be%d0%b4%d1%8b-%d0%b1%d0%b5%d0%b7%d0%be%d0%bf%d0%b0%d1%81%d0%bd%d0%be%d0%b3%d0%be-%d0%be%d1%81%d0%b2%d0%be%d0%b1%d0%be%d0%b6%d0%b4%d0%b5%d0%bd%d0%b8%d1%8f-%d0%bf%d0%b0%d0%bc/ При попытке реализовать lock-free структуру данных любой программист рано или поздно сталкивается с вопросом «Когда можно освободить память, занимаемую удаленными объектами?». Оказывается, при наивных попытках ответить на этот вопрос возникает много проблем (ABA, NullPointerException), и для подобных структур данных простого ответа на этот вопрос просто нет. Зато существуют более сложные и принципиально различные методы для безопасного освобождения памяти, каждый из которых обладает своими преимуществами и недостатаками, которые надо принимать во внимание при выборе того или иного метода. На семинаре Андрей Кашин познакомит с двумя такими методами: Hazard pointers (опасные указатели), RCU (Read-copy-update). А далее будут рассказаны теоретические свойства этих методов, а затем посмотрим на интересные детали реализации в реальных библиотеках. Плейлист: https://www.youtube.com/playlist?list=PLuWypj7F_mQlIBhQwfb8qgRjI-qZuJx1U

Название:

Методы безопасного освобождения памяти в lock-free структурах данных (Андрей Кашин 2016.11.23)

Категория:

Разное