当前位置: 首页 > news >正文

农特产品电商网站建设目标公司网站费用构成需要多少钱

农特产品电商网站建设目标,公司网站费用构成需要多少钱,如何用代码做分数查询的网站,一个网站拿到手里想做优化第一步怎么做要改进单例模式的实现以确保线程安全并优化性能,有几种常见的方法。以下是几种改进 ThreadUtil 单例实现的方法: ### 1. 懒汉式(线程安全版) 使用同步机制来确保线程安全,但只在第一次创建实例时同步,这样…

要改进单例模式的实现以确保线程安全并优化性能,有几种常见的方法。以下是几种改进 `ThreadUtil` 单例实现的方法:

### 1. 懒汉式(线程安全版)
使用同步机制来确保线程安全,但只在第一次创建实例时同步,这样既保证了线程安全,又保持了懒加载的特点。

```java
public class ThreadUtil {
    private static ThreadUtil instance;
    private final ScheduledThreadPoolExecutor mThreadPoolExecutor;
    private final ExecutorService singleThreadExecutor;

    private ThreadUtil() {
        mThreadPoolExecutor = new ScheduledThreadPoolExecutor(CORE_POOL_SIZE);
        singleThreadExecutor = Executors.newSingleThreadExecutor();
    }

    public static synchronized ThreadUtil getInstance() {
        if (instance == null) {
            instance = new ThreadUtil();
        }
        return instance;
    }
}
```

### 2. 饿汉式
在类加载时就创建实例,避免了同步问题,但牺牲了懒加载。

```java
public class ThreadUtil {
    private static final ThreadUtil instance = new ThreadUtil();
    // ... 其他代码

    private ThreadUtil() {
        // ... 初始化代码
    }

    public static ThreadUtil getInstance() {
        return instance;
    }
}
```

### 3. 双重检查锁定(Double-Checked Locking)
使用双重检查锁定来实现延迟加载和线程安全。

```java
public class ThreadUtil {
    private static volatile ThreadUtil instance;
    private final ScheduledThreadPoolExecutor mThreadPoolExecutor;
    private final ExecutorService singleThreadExecutor;

    private ThreadUtil() {
        // ... 初始化代码
    }

    public static ThreadUtil getInstance() {
        if (instance == null) {
            synchronized (ThreadUtil.class) {
                if (instance == null) {
                    instance = new ThreadUtil();
                }
            }
        }
        return instance;
    }
}
```

### 4. 静态内部类
使用静态内部类的方式来实现单例,这种方式利用了类加载机制来保证初始化实例时的线程安全。

```java
public class ThreadUtil {
    private final ScheduledThreadPoolExecutor mThreadPoolExecutor;
    private final ExecutorService singleThreadExecutor;

    private ThreadUtil() {
        // ... 初始化代码
    }

    private static class Holder {
        private static final ThreadUtil INSTANCE = new ThreadUtil();
    }

    public static ThreadUtil getInstance() {
        return Holder.INSTANCE;
    }
}
```

### 5. 枚举
使用枚举来实现单例,这是最简单、最安全的实现方式。

```java
public enum ThreadUtil {
    INSTANCE;
    private final ScheduledThreadPoolExecutor mThreadPoolExecutor;
    private final ExecutorService singleThreadExecutor;

    ThreadUtil() {
        // ... 初始化代码
    }

    public ScheduledThreadPoolExecutor getThreadPoolExecutor() {
        return mThreadPoolExecutor;
    }

    public ExecutorService getSingleThreadExecutor() {
        return singleThreadExecutor;
    }
}
```

每种方法都有其优缺点,选择哪一种取决于具体的应用场景和需求。例如,如果单例的实例化成本很高,可能会倾向于使用懒汉式;如果对性能要求极高,可能会选择静态内部类或枚举方式。

http://www.yayakq.cn/news/457442/

相关文章:

  • 受欢迎的网站建设平台权威发布封面
  • 建设网站需要钱吗小米应用商店安装下载
  • 外贸网站制作费用开发外包公司有哪些?哪个比较好
  • 梧州外贸网站推广设计数字营销推广平台
  • 网站建设接外包流程图网站 百度搜不到
  • 外贸网站自我建设与优化东莞规划局
  • 北京企业网站设计模板网站建设包括哪些
  • 泉州建站模板系统synology做网站
  • 软件公司网站设计嘉定做网站的
  • 深圳网站网络推广公司首页优化排名
  • 哪些网站建设公司好免费个人手机网站
  • 杭州建设网站 网站建设网站建设分几种类型
  • 可视化信息 网站dede网站制作
  • 优质的低价网站建设如何自己做网站腾讯
  • 厦门北京网站建设公司哪家好wordpress代码增强插件
  • 上海企业网站建设哪家好百度代理合作平台
  • 贸易做网站网站提示域名解析错误怎么办
  • 长沙网站设计工作室wordpress4.95中文版
  • 淄博网站建设电话咨询贵阳企业网站排名优化
  • 做电子书屋的网站购物网站常用的多组图左右轮播的js图片特效代码
  • 中卫网站建设多少钱完整网站开发视频
  • 做网站怎么做付费推广wordpress首页循环
  • app网站开发公司青岛网站建设q.479185700強
  • 网站上怎么做全景看图品牌推广的意义
  • 组建网站需多少钱网站建设中采用的技术方案
  • 用dede做的网站首页如何维护企业电子商务网站建设
  • 学做炒菜的网站请拿笔记记下新域名
  • 行业导航类网站模板做pc端网站报价
  • 韩国网站设计风格网站大图做多大尺寸
  • 手机网站 开发者模式wordpress防御插件