LINUX.ORG.RU

История изменений

Исправление alysnix, (текущая версия) :

А что там еще не обсуждено?

транзакционная память медленней и больше жрет ресурсов, чем наивные блокировки, на самом деле. транзакционная память это все те же танцы с бубном вокруг вздорных локфри идей, которым в обед сто лет… и которые себя всерьез не показали. потому что в момент, когда проиходит естественное столкновенение на данных двух тредов, тогда при наивном подходе(который естественнен) один из них блокируется, а при идеях локфри - второй тред не блокируется, а пишет копию, которая потом «вмерживается» в данные.

в первом случае тред стоял в ожидании и давал возможность работать другим тредам с другими данными, во втором случае тред не давал другим работать, а делал копию, а потом ее кто-то вмерживал. очевидно что система потратила время на вмерживание(как минимум), и в целом работала дольше, чем в первом случае.

работающая система, это не два треда что борются за одну ячейку памяти, але теоретики! а сотни тредов, что борются за свои участки. то есть отправка в ожидание одного треда не есть вред!!! это дает возможность другим тредам делать что-то полезное. например на экране картинки рисовать. или байтики в порты кидать.

Исходная версия alysnix, :

А что там еще не обсуждено?

транзакционная память медленней и больше жрет ресурсов, чем наивные блокировки, на самом деле. транзакционная память это все те же танцы с бубном вокруг вздорных локфри идей, которым в обед сто лет… и которые себя всерьез не показали. потому что в момент, когда проиходит естественное столкновенение на данных двух тредов, тогда при наивном подходе(который естественнен) один из них блокируется, а при идеях локфри - второй тред не блокируется, а пишет копию, которая потом «вмерживается» в данные.

в первом случае тред стоял в ожидании и давал возможность работать другим тредам с другими данными, во втором случае тред не давал другим работать, а делал копию, а потом ее кто-то вмерживал. очевидно что система потратила время на вмерживание(как минимум), и в целом работала дольше, чем в первом случае.

работающая система, это не два треда что борются за одну ячейку памяти, але теоретики! а сотни тредов, что борятся за свои участки. то есть отправка в ожидание одного треда не есть вред!!! это дает возможность другим тредам делать что-то полезное. например на экране картинки рисовать. или байтики в порты кидать.