关键词搜索

源码搜索 ×
×

java和C++之单例类双重检查加锁

发布2017-10-25浏览1505次

详情内容

1、Java

  1. public class Singleton {
  2. private volatile static Singleton instance;
  3. public static Singleton getInstance () {
  4. if (instance == null) {
  5. synchronized (Singleton.class) {
  6. if (instance == null) {
  7. instance = new Singleton();
  8. }
  9. }
  10. }
  11. return instance;
  12. }
  13. }

 


2、C++

  1. class Singleton {
  2. private:
  3. volatile Singleton* pInst = 0;
  4. public:
  5. static Singleton* GetInstance() {
  6. if (pInst == 0) {
  7. lock();
  8. if (pInst == 0) {
  9. pInst = new Singleton();
  10. }
  11. unlock();
  12. }
  13. return pInst;
  14. }
  15. }
 

 


3、总结

同步机制等价于锁机制

相关技术文章

点击QQ咨询
开通会员
返回顶部
×
微信扫码支付
微信扫码支付
确定支付下载
请使用微信描二维码支付
×

提示信息

×

选择支付方式

  • 微信支付
  • 支付宝付款
确定支付下载