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

用手机能创建网站吗今日热点新闻头条国内

用手机能创建网站吗,今日热点新闻头条国内,现在的网站内容区域做多宽,网站开发行情HashMap不是线程安全的,主要有以下几个问题: ①、多线程下扩容会死循环。JDK1.7 中的 HashMap 使用的是头插法插入元素,在多线程的环境下,扩容的时候就有可能导致出现环形链表,造成死循环。 JDK 8 时已经修复了这个问…
  • HashMap不是线程安全的,主要有以下几个问题:

①、多线程下扩容会死循环。JDK1.7 中的 HashMap 使用的是头插法插入元素,在多线程的环境下,扩容的时候就有可能导致出现环形链表,造成死循环。
在这里插入图片描述
JDK 8 时已经修复了这个问题,扩容时会保持链表原来的顺序。

②、多线程的put可能会导致元素的丢失,因为计算出来的位置可能会被其他线程的put覆盖。本来哈希冲突应该用链表的,但多线程时由于没有加锁,相同位置的元素可能就被干掉了;
在这里插入图片描述
③、put和get并发时,可能导致get为null。线程1执行put时,因为元素个数超出阈值而导致出现扩容,线程2此时执行get,就有可能出现这个问题;
在这里插入图片描述

  • 因为线程1执行完table = newTab之后,线程2中的table此时也发生了变化,此时去get的时候当然会get到null了,因为元素还没有转移;

接下来说下map的同步和非同步问题

  • Hashtable 是 Map 接口的一个早期的同步实现,它的所有方法都是同步的,即每个方法都用 synchronized 关键字修饰,以确保线程安全。

    随着 JDK 版本的升级,Java 提供了更好的线程安全 Map 实现,如 ConcurrentHashMap。

    如果是在单线程环境下,可以使用 HashMap。

http://www.hrbkazy.com/news/10512.html

相关文章:

  • wordpress 无刷新翻页广州seo报价
  • 做愛視頻网站网站推广公司电话
  • 电商网站开发实战视频教程企业网络推广方法
  • 建站主机青岛网站推广企业
  • 淄博著名网站开发方法哈尔滨seo服务
  • 内网建设网站外网访问seo入门
  • phpstudy做网站媒体软文发稿
  • 做相册网站logo搜索引擎营销策略有哪些
  • 网站美工和平面设计师cpu游戏优化加速软件
  • 商业广告创意设计泽成seo网站排名
  • 武汉网站模板线上营销方式主要有哪些
  • 在家做电商怎么做丈哥seo博客
  • 网站的内链怎么做seo标题优化关键词
  • 怎么在建筑网站做翻译兼职长沙百度推广开户
  • 织梦 xml网站地图广州seo优化外包服务
  • 江苏省建设网站首页谷歌浏览器 安卓下载2023版
  • 阿拉丁做网站怎么做的网站seo什么意思
  • 网站和webapp的区别天津seo数据监控
  • 查网站域名备案查询系统谷歌seo优化推广
  • 官网建站网站福州网络推广运营
  • 青岛外贸网站制作网站卖链接
  • 免费网站建设的基本流程十大跨境电商erp排名
  • jquery网站开发实例学习软件的网站
  • 网站开发费用多少seo服务指什么意思
  • 自己怎么免费做网站哪里可以学企业管理培训
  • 深圳做网站的好公司有哪些重庆seo技术博客
  • 做网站上传图片谷歌官网登录入口
  • 中山比好的做网站的公司成都移动seo
  • 手机网站设计规格百度自媒体平台
  • 成全视频免费观看在线看中国男篮直播seo优化操作