性能提高是毋庸置疑的
但是这样move在多线程下不安全
【 在 DoorWay (DoorWay) 的大作中提到: 】
: 标 题: 这个std::move(shared_ptr<Test>)能提高多少效率?
: 发信站: 水木社区 (Sat Jan 22 11:22:26 2022), 站内
:
:
: void polarity_test(std::shared_ptr<Test> test)
: {
: test->harness->callAndReport([test2 = std::move(test)]() mutable
: {
: test2->reverse_polarity();
: ::resume_on_main_thread([test3 = std::move(test2)]()
: {
: test3->reverse_polarity();
: });
: });
: }
:
:
: 就是为了避免拷贝构造一次共享指针?计数++一次,减减一次?
:
https://devblogs.microsoft.com/oldnewthing/20220120-00/?p=106178: 原文的重点是,这个move会导致崩溃。我觉得很清楚。就是奇怪这个move
: --
: ※ 修改:·DoorWay 于 Jan 22 16:16:28 2022 修改本文·[FROM: 61.185.187.*]
: ※ 来源:·水木社区
http://www.mysmth.net·[FROM: 61.185.158.*]
--
修改:DoorWay FROM 61.185.187.*
FROM 223.72.63.*