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

wap网站现在还有什么用小程序软件定制

wap网站现在还有什么用,小程序软件定制,网站建设金手指排名专业,sage wordpress目录 1.多线程下线程不安全的问题 1.使用多个线程对Array List集合进行添加操作并打印#xff0c;查看结果 2.如何在多线程环境下使用线程安全的集合类 CopyOnWriteArrayList 3.多线程环境下使用队列 4.多线程环境下使用哈希表 1.HashTable线程安全 2.Concurrent Hash M…目录 1.多线程下线程不安全的问题 1.使用多个线程对Array List集合进行添加操作并打印查看结果 2.如何在多线程环境下使用线程安全的集合类 CopyOnWriteArrayList 3.多线程环境下使用队列 4.多线程环境下使用哈希表 1.HashTable线程安全 2.Concurrent Hash Map线程安全 1.更小的锁粒度加锁范围 2.只给写加锁不给读加锁 3.充分利用CAS机制 4.对扩容进行了特殊优化 5.死锁 1.产生方式 2.产生原因 3.避免死锁 1.循环等待 2.银行家算法 1.多线程下线程不安全的问题 1.使用多个线程对Array List集合进行添加操作并打印查看结果 public static void main(String[] args) {ListInteger list new ArrayList();for (int i 0; i 10; i) {int finalI i1;Thread thread new Thread(() - {list.add(finalI);System.out.println(list);});thread.start();}} 出现了并发修改异常 2.如何在多线程环境下使用线程安全的集合类 使用VectorHash TableJDK中提供的线程安全的类强烈不推荐 自己使用同步机制Synchronized或者Reentrant Lock和上面效果一样也不推荐使用工具类转换 Collections.synchronizedList(new ArrayList) (上面三个实现的原理基本一样都不推荐) CopyOnWriteArrayList 他是JUC包下的一个类使用的是一种叫写时复制技术来实现的 当要修改一个集合时先复制这个集合的副本修改副本的数据修改完成后用副本覆盖原始集合 优点在读多写少的场景下性能很高不需要加锁竞争 缺点占用内存较多新写的数据不能被第一时间读取到 不会在多线程情况下产生异常 3.多线程环境下使用队列 4.多线程环境下使用哈希表 Hash Map本身是线程不安全的类正常单线程使用没有问题由于没有加锁在多线程环境下会产生线程安全的问题 1.HashTable线程安全 实现方法就是通过Synchronized给自己加锁读写的时候都会加锁这样效率太低不建议使用 2.Concurrent Hash Map线程安全 多线程环境下强烈推荐使用这种方式保证线程安全他与Hash TableCollections不同并不是使用synchronized关键字实现加锁的而是通过JUC包下的Reentrant Lock实现加锁 1.更小的锁粒度加锁范围 Hash Table对所有操作全部加锁必然会对性能有影响 Concurrent Hash Map对每个Hash桶进行加锁提高并发能力 2.只给写加锁不给读加锁 加锁的方式是Reentrant Lock大量运用CAS操作而且共享变量使用volatile修饰 3.充分利用CAS机制 4.对扩容进行了特殊优化 5.死锁 死锁就是一个线程加上锁之后不运行也不释放僵住了 死锁会导致程序无法继续运行是最严重的BUG之一 1.产生方式 例如两个线程两把锁 就会产生死锁 2.产生原因 死锁产生的四个必要条件 互斥使用即当资源被一个线程使用(占有)时别的线程不能使用 不可抢占资源请求者不能强制从资源占有者手中夺取资源资源只能由资源占有者主动释放。 请求和保持即当资源请求者在请求其他的资源的同时保持对原有资源的占有。 循环等待即存在一个等待队列P1占有P2的资源P2占有P3的资源P3占有P1的资源。这样 就形成了一个等待环路。 3.避免死锁 当上述四个条件都成立的时候便形成死锁。当然死锁的情况下如果打破上述任何一个条件便可让死锁消失。 其中互斥使用和不可抢占是锁的基本特性不能打破请求保持有可能打破这取决于代码如何写然而最容易破坏的还是 循环等待 1.循环等待 最常用的一种死锁阻止技术就是锁排序. 假设有 N 个线程尝试获取 M 把锁, 就可以针对 M 把锁进行编号 (1, 2, 3...M). N 个线程尝试获取锁的时候, 都按照固定的按编号由小到大顺序来获取锁. 这样就可以避免环路等待. 2.银行家算法 Thread Local 将所有的资源进行统一分配 例如 public class Demo05 {private static ThreadLocalInteger threadLocal new ThreadLocal();public static void main(String[] args) {Thread thread new Thread(() - {int count 10;threadLocal.set(count);print();},class1);Thread thread1 new Thread(() - {int count 20;threadLocal.set(count);print();},class2);thread1.start();thread.start();}public static void print() {Integer count threadLocal.get();System.out.println(Thread.currentThread().getName()定制校服count);} }
http://www.hkea.cn/news/14502899/

相关文章:

  • 如何建立一个网站英语作文毕业设计做网站功能实现不出怎么办
  • 企业如何实现高端网站建设腾讯小程序怎么制作
  • 湖南网站制作公司推荐wordpress模板 极简
  • 太原网站建设360网站托管服务怎么收费
  • 河北网站建设联系方式wordpress删除插件
  • 免费做网站哪里有wordpress如何修改上传图片大小
  • 渌口区市政建设局网站列举网络推广的方式
  • 做网站什么语言科讯cms 网站地图
  • 做网站的电脑配置小程序短剧
  • 小型门户网站有哪些php网站游客试用怎么做
  • 简单建站的网站可以不使用备案的网站名吗
  • 足球比分网站怎么建设惠州网站建设制作
  • 企业网站的建立联系方式做好网络推广的技巧
  • 网站建设与管理广东药学院免费行情软件网站mnw
  • 网站建设的流程范文1500字没有企业邮箱怎么认证
  • 网站建设服务费进入什么科目河北企业建站系统信息
  • 四川网站建设平台wordpress 网页压缩
  • 宁波seo网站排名优化公司最近免费中文字幕mv免费高清版
  • 大型房地产网站建设方案电影网页设计素材
  • 门户网站建设评标办法人才招聘网最新招聘
  • wordpress主题访问慢苏州网页优化服务
  • 电子商务网站建设不足深圳正规融资公司
  • 新版 网站在建设中...公式wordpress
  • 沧州网站建设定制价格制作灯笼的视频
  • 如何做网站流程图网站域名续费
  • 广州网站建设服务电话响应式网站用什么软件做效果
  • 电子商城网站的设计与实现自己建设的手机网站做百度地图定位
  • 安徽省建设厅官方网站最专业的网站建设seo优化服务公司
  • 《电子商务网站开发实训》总结网站建设 每年费用
  • 做头像网站有哪些wordpress最新文章