线程同步与效率的博弈

       先前写过一个程序,多线程保护的很好,运行也很稳定,却发现效率非常低。这让我觉得很郁闷。忽然发现世界上的事情往往如此,不过就是稳定和效率的博弈。改了版本后,取消了很多同步的操作,却发现稳定性降低了很多,同样是很郁闷。
       前段时间看《Modern C++ Design》,提到的类锁和对象锁的概念,这里面需要注意以下,我用到的一个全局管理对象,它的锁其实就是一个类锁,过多的使用类锁,会发现效率回降到非常低的程度,而对象锁可以稍微好一些,但二者的运用之处决对不同。顺带提一句,《Modern C++ Design》提到了计算机CPU的指令优化,可能带来锁的实效。X86应该不用考虑到这个问题吧。
       今天的一点点心得:先申请资源,再记录,使用资源,清除资源,删除记录,会收资源。这个顺序绝对不能错。如果可以做到这一点,可以减少锁的使用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值