Разница между boost :: unique_lock и boost :: upgrade_lock?

Я новичок в концепции многопоточности в C ++. Я просто хотел узнать несколько вещей: Чем boost :: unique_lock отличается от boost :: upgrade_lock ?

Чем на самом деле эксклюзивное владение отличается от владения обновлением.

Может быть, можно сказать, что исключительное владение является потокобезопасным, но не обновляет право владения, в этом случае я хотел бы знать, как может быть вредно владение обновлением, если это может быть? Я хочу знать, что upgrade_lock позволяет или не позволяет это unique_lock делает, кроме исключительной блокировки. Отсутствие эксклюзивной блокировки со стороны upgrade_lock делает его похожим на shared_lock или что, и если да, то как это отличается от shared_lock ?

7
задан manlio 22 March 2014 в 15:18
поделиться