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

如何建设国外网站网上如何赚钱

如何建设国外网站,网上如何赚钱,网站建设的安全应该注意什么,深圳知名网站建设哪家好一、Vector和ArrayList、LinkedList联系和区别,分别的使用场景 ArrayList:底层是数组实现,线程不安全,查询和修改非常快,但是增加和删除慢 LinkedList: 底层是双向链表,线程不安全,查询和修改…

一、Vector和ArrayList、LinkedList联系和区别,分别的使用场景

ArrayList:底层是数组实现,线程不安全,查询和修改非常快,但是增加和删除慢

LinkedList: 底层是双向链表,线程不安全,查询和修改速度慢,但是增加和删除速度快

Vector: 底层是数组实现,线程安全的,操作的时候使用synchronized进行加锁

使用场景:

  • Vector已经很少用了
  • 增加和删除场景多则用LinkedList
  • 查询和修改多则用ArrayList

二、如果需要保证线程安全,ArrayList应该怎么做,有几种方式

方式一:使用Collections.synchronizedList(synchronized加锁)

List<String> synchronizedList = Collections.synchronizedList(new ArrayList<>());

方式二:使用 CopyOnWriteArrayList(ReentrantLock加锁)

List<String> cowList = new CopyOnWriteArrayList<>();

三、CopyOnWriteArrayList和 Collections.synchronizedList实现线程安全的区别以及它们的使用场景

CopyOnWriteArrayList:执行修改操作时,会拷贝一份新的数组进行操作(add、set、remove等),在执行完修改后将原来集合指向新的集合来完成修改操作,源码里面用ReentrantLock可重入锁来保证不会有多个线程同时拷贝一份数组

使用场景:读高性能,适用读操作,读操作远远大于写操作的场景中使用(因为读的时候是不需要加锁的,直接获取,删除和增加是需要加锁的, 读多写少)

Collections.synchronizedList:线程安全的原因是因为它几乎在每个方法中都使用了synchronized同步锁

使用场景:读操作性能并不如CopyOnWriteArrayList(因为读操作的时候有加锁)

四、CopyOnWriteArrayList的设计思想以及它有什么缺点

设计思想:读写分离+最终一致,读的时候是读旧的数组

缺点:内存占用问题,写时复制机制,内存里会同时驻扎两个对象的内存,旧的对象和新写入的对象,如果对象大则容易发生Yong GC和Full GC

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

相关文章:

  • 多软件网站下载安装签名图片在线制作
  • h5个人网站模板1688开山网一起做网站
  • 网站域名无法访问做电商网站的公司
  • 怎么给汽车网站做推广h5牛牛棋牌源码
  • 网站平台定制开发网站开发者兼容模式出错
  • 承德建设厅网站网站开发有哪些公司
  • 网站建设与管理课程报告上饶网站网站建设
  • 心雨在线高端网站建设专业页面设计的怎么样
  • 网站单页面策划太原云建站模板
  • 做一家电商网站需要多少钱wordpress4.9中文
  • 网站开发最严重的问题小说网站建设方案
  • 购物网站建设与实现建行手机银行app
  • 网站如何做质保系统网站如何做网站征求意见专栏
  • 吉林住房和城乡建设厅网站多语言商城系统
  • 无锡网站制作方案编程培训机构加盟品牌
  • 天津免费做网站网站架构设计师简历
  • 莆田网站建站宁波做网站首荐荣盛网络
  • 北京小程序网站制作cpa推广之家
  • 西安建站之家网络科技有限公司做一个大型网站
  • 杭州专业网站建设在哪里东光有做网站的吗
  • 小企业网站建设源代码传奇网页
  • 做宣传册从哪个网站找素材男的和女的做那种事情网站
  • 艺术网站制作wordpress page 调用
  • asp网站安全如何做wordpress开启多站点
  • 网站改版完成网站栏目页排名
  • 电子商务网站建设与规划案例个体户营业执照查询网上查询
  • 谷歌网站的主要内容用织梦做网站
  • 网站内页是什么wordpress修改ftp
  • 哈尔滨企业网站开发报价网站建设 小知识
  • 高大上的自助建站网站上海网站建设商城