为了账号安全,请及时绑定邮箱和手机立即绑定

网络框架参数构建方式优化

2017.07.17 13:52 3265浏览
Java架构师-十项全能
点击查看
¥8800.00 6166.00 (历史最低价,仅限618活动期间)

RestClient之前的Params参数Map是一个全局的静态变量,后来在和同学们一起优化的过程中,发现单独初始化是更好的,因为不能保证多线程或同时网络请求操作的唯一性,这里加锁反而是一个多余且低效的行为,所以做以下优化

  /**
     * 参数容器
     */
    private static final class ParamsHolder {
        private static final WeakHashMap<String, Object> PARAMS = new WeakHashMap<>();
    }

    public static WeakHashMap<String, Object> getParams() {
        return ParamsHolder.PARAMS;
    }

这段代码注释掉
然后RestClientBuilder 和RxRestClientBuilder在开始分别执行

private final WeakHashMap<String, Object> PARAMS = new WeakHashMap<>();

同时RestClient,DownloadHandler和RxRestClient种构造方法里,params通过参数传递获取

  this.PARAMS = params;

特别感谢细心的@桂 同学

点击查看更多内容
3人点赞

若觉得本文不错,就分享一下吧!

评论

相关文章推荐

正在加载中
架构师
手记
粉丝
1.6万
获赞与收藏
230

关注TA,一起探索更多经验知识

作者相关文章
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消