前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >为什么java.util.concurrent 包里没有并发的ArrayList实现?

为什么java.util.concurrent 包里没有并发的ArrayList实现?

作者头像
Allen Cheng
发布于 2018-09-10 03:29:38
发布于 2018-09-10 03:29:38
9390
举报
文章被收录于专栏:听Allen瞎扯淡听Allen瞎扯淡

问:JDK 5在 java.util.concurrent 里引入了 ConcurrentHashMap,在需要支持高并发的场景,我们可以使用它代替 HashMap。但是为什么没有 ArrayList 的并发实现呢?难道在多线程场景下我们只有 Vector 这一种线程安全的数组实现可以选择么?为什么在 java.util.concurrent 没有一个类可以代替 Vector 呢?

答:我认为在 java.util.concurrent 包中没有加入并发的 ArrayList 实现的主要原因是:很难去开发一个通用并且没有并发瓶颈的线程安全的 List。像 ConcurrentHashMap 这样的类的真正价值(The real point / value of classes)并不是它们保证了线程安全。而在于它们在保证线程安全的同时不存在并发瓶颈。举个例子,ConcurrentHashMap 采用了锁分段技术和弱一致性的Map迭代器去规避并发瓶颈。所以问题在于,像“Array List”这样的数据结构,你不知道如何去规避并发的瓶颈。拿contains() 这样一个操作来说,当你进行搜索的时候如何避免锁住整个 list?另一方面,Queue 和 Deque (基于Linked List)有并发的实现是因为他们的接口相比List的接口有更多的限制,这些限制使得实现并发成为可能。CopyOnWriteArrayList 是一个有趣的例子,它规避了只读操作(如 get/contains)并发的瓶颈,但是它为了做到这点,在修改操作中做了很多工作和修改可见性规则。 此外,修改操作还会锁住整个List,因此这也是一个并发瓶颈。所以从理论上来说,CopyOnWriteArrayList 并不算是一个通用的并发 List。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2016-09-07,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
腾讯云服务器搭建 WordPress站点『图文教程』
WordPress 是一款常用的搭建个人博客网站软件,该软件使用 PHP 语言开发。您可通过在腾讯云服务器的简单操作部署 WordPress,发布个人博客。
用户2416682
2019/07/23
8.7K1
玩转CVM之搭建WordPress站点
WordPress 是一款常用的搭建个人博客网站软件,该软件使用 PHP 语言开发。您可通过在腾讯云服务器的简单操作部署 WordPress,发布个人博客。
苏欣
2019/07/26
3.6K0
云服务器搭建网站教程-用腾讯云服务器搭建网站
建网站本身是没有什么难度的,只是配套需要的东西有些繁琐,我们需要提前准备一些软件之类的必备的东西,其中主要包括:
用户6486825
2019/10/17
30.9K0
云服务器搭建网站教程-用腾讯云服务器搭建网站
利用云服务器搭建网站教程
进入到了腾讯云界面,我们输入我们想注册的域名,然后查询,如果我们想要的域名没有被注册的话,我们就可以注册一个,各个后缀价格不同,看自己喜好。域名注册完成之后需要进行实名认证,腾讯云的速度的话我这里是几分钟就实名认证审核通过了,速度还是蛮快的.
Chuanrui 初见之旅
2022/11/14
4.9K0
利用云服务器搭建网站教程
腾讯云服务器+AMH面板+dedecms织梦搭建网站全教程
腾讯云市场中提供了AMH镜像。选择镜像,在腾讯云服务器(CVM)上快速部署具有较高稳定性和安全性的软件环境以及个人网站。
用户2416682
2019/11/27
8.5K1
腾讯云服务器+AMH面板+dedecms织梦搭建网站全教程
使用腾讯云服务器怎么搭建网站?全自动部署建站教程
使用腾讯云服务器怎么搭建网站?全自动部署建站教程,使用腾讯云服务器怎么搭建WordPress网站?太简单了,现在已经不需要手动搭建WP博客了,腾讯云百科以轻量应用服务器为例,腾讯云集成了WordPress应用模板镜像,直接选择这个镜像,腾讯云系统会自动在后台为你的轻量应用服务器安装WordPress程序以及PHP、MySQL等WP依赖的LAMP或LNMP环境,不需要手动部署。
用户9264446
2024/05/25
6490
使用腾讯云服务器怎么搭建网站?全自动部署建站教程
腾讯云轻量应用服务器配置及建网站教程
腾讯云轻量应用服务器如何使用?新手站长以搭建WordPress为例,使用宝塔镜像,先在防火墙开通端口。腾讯云百科来详细说下腾讯云服务器从购买、配置到网站上线全流程,包括轻量服务器配置选择、应用镜像选择、重置密码、防火墙开放端口教程等详细教程:
用户9264446
2022/08/10
9.5K0
腾讯云轻量应用服务器配置及建网站教程
腾讯云服务器搭建网站只需7个步骤(宝塔面板+wordpress)
建网站本身是没有什么难度的,只是配套需要的东西有些繁琐,我们需要提前准备一些软件之类的必备的东西,其中主要包括:
用户2416682
2019/12/07
6.9K0
腾讯云服务器搭建网站只需7个步骤(宝塔面板+wordpress)
【玩转腾讯云】用轻量应用服务器搭建网站
不少小伙伴应该知道,腾讯云正在内测轻量应用服务器,而且马上就要公测了!我提前申请到了一台内测机器,那就来告诉大家,在公测后购买腾讯云轻量应用服务器之后如何玩转它吧,比如搭建静态或者动态网站!
Bess Croft
2020/06/12
11.9K2
【玩转腾讯云】用轻量应用服务器搭建网站
用2核2G的入门级云服务器搭建个人博客网站
国庆假期期间,偶然浏览到了一则云服务器的广告,此后无论是在浏览新闻APP还是购物APP时,都会多次刷到云服务器广告。终于没忍住,买了一台某为的2核/2G/1M的入门级服务器,价格倒是便宜,56块钱一年,可以体验一下,没事的时候也可以用来练习练习Linux命令。
大刚测试开发实战
2022/11/14
4.3K0
用2核2G的入门级云服务器搭建个人博客网站
腾讯云服务器搭建WordPress博客
WordPress是使用PHP语言开发的博客平台,用户可以在支持PHP和MySQL数据库的服务器上架设属于自己的网站。也可以把 WordPress当作一个内容管理系统(CMS)来使用。它是使用PHP语言和MySQL数据库开发的。用户可以在支持 PHP 和 MySQL数据库的服务器上使用自己的博客。WordPress有许多第三方开发的免费模板,安装方式简单易用。所以,对于初学者来说,我强烈建议使用WordPress来搭建网站。因为这是最简单易用的平台,且使用于任何开发者,用户以及自媒体作家。
用户2416682
2019/10/22
5.1K0
腾讯云服务器搭建WordPress博客
【图文】腾讯云服务器搭建网站教程(宝塔面板+wordpress)
建网站本身是没有什么难度的,只是配套需要的东西有些繁琐,我们需要提前准备一些软件之类的必备的东西,其中主要包括:
2019/07/18
6.4K0
【图文】腾讯云服务器搭建网站教程(宝塔面板+wordpress)
建网站本身是没有什么难度的,只是配套需要的东西有些繁琐,我们需要提前准备一些软件之类的必备的东西,其中主要包括:
云上云
2019/07/02
10.5K2
【图文】腾讯云服务器搭建网站教程(宝塔面板+wordpress)
腾讯云服务器搭建网站
对于服务器来说稳定、极速就选择 2核 4G内存配置的云服务器比较稳妥。这个配置跑网站是比较轻松无压力的。配上 avada主题,可以做出的很大气、高大上的企业网站。下面介绍腾讯云的长期优惠折扣活动,感兴趣的可以注册账号领代金券使用。
用户6577384
2019/10/29
22.7K0
腾讯云服务器搭建网站
【干货】保姆级超细教程从购买服务器到网站搭建成功!
云服务器(Elastic Compute Service, ECS)是一种简单高效、安全可靠、处理能力可弹性伸缩的计算服务。其管理方式比物理服务器更简单高效。用户无需提前购买硬件,即可迅速创建或释放任意多台云服务器。
释然IT杂谈
2022/10/27
5K0
【干货】保姆级超细教程从购买服务器到网站搭建成功!
腾讯云服务器(CentOS 7、Tencent Linux)手动搭建LNMP环境(linux+Nginx+Mariadb+PHP)
腾讯云十周年活动刚刚开始时买了的1核2G的星星海云服务器SA2,带宽1M,系统盘50G 高性能云硬盘,288元/3年挺划算。
就要上云
2020/09/12
1.5K0
云服务器如何搭建个人的网站?云服务器搭建网站要多久?
网站是网络的基础,可以说网络就是由一个个网站支撑起来的,不仅企业或公司可以建设网站,就连个人也可以搭建自己的网站,如果想搭建网站,需要借助云服务器的帮助。由于很多人都不知道云服务器如何搭建个人的网站,所以下面将为大家介绍云服务器如何搭建网站的相关内容。
用户8715145
2021/09/03
18K0
基于服务器的个人博客网站搭建
服务器与本地xshell连接,就像连接Linux系统一样,只是ip写成服务器的公网ip。
CoreDao
2021/04/13
4.1K0
基于服务器的个人博客网站搭建
玩转CVM之搭建Discuz! 论坛
Discuz! 是全球成熟度最高、覆盖率最大的论坛网站软件系统之一,被200多万网站用户使用。本教程介绍在 LAMP(Linux + Apache + MariaDB + PHP)环境下搭建 Discuz! 论坛网站的步骤,以 Discuz! X3.2 为例。 具体操作方法如下:
苏欣
2019/07/29
6.7K0
WordPress搭建网站,需要掌握和了解哪些知识点?
对于很多完全没有接触过wordpress和网站搭建的用户来说,还是比较难的,需要学习和了解的知识点还是很多的,但是对于稍微熟悉了的用户来说基本上就是分分钟的事儿,今天就给大家盘点一下有哪些需要了解和掌握的知识点吧。
wordpress建站吧
2022/03/16
2.1K0
WordPress搭建网站,需要掌握和了解哪些知识点?
推荐阅读
相关推荐
腾讯云服务器搭建 WordPress站点『图文教程』
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档