登录社区云,与社区用户共同成长
邀请您加入社区
std::shared_ptr默认使用顺序一致性内存序(memory_order_seq_cst),保证所有线程看到一致的操作顺序,但会带来沉重的性能损耗。根据共享指针的使用场景,可采用更宽松的内存序策略:对于引用计数的递增操作(如拷贝构造),使用memory_order_relaxed仅保证原子性而不强制内存顺序,因为此时不需要立即同步到其他线程;而对于递减操作(如析构),需使用memory_o