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

资兴市网站建设专业网站建设采取招标的方式

资兴市网站建设专业,网站建设采取招标的方式,wordpress多级菜单,简洁网站设计欣赏阿华代码#xff0c;不是逆风#xff0c;就是我疯#xff0c;你们的点赞收藏是我前进最大的动力#xff01;#xff01;希望本文内容能够帮助到你#xff01; 目录 一#xff1a;阻塞队列 1#xff1a;概念 2#xff1a;阻塞队列与普通队列比较 二#xff1a;“生…阿华代码不是逆风就是我疯你们的点赞收藏是我前进最大的动力希望本文内容能够帮助到你 目录 一阻塞队列 1概念 2阻塞队列与普通队列比较 二“生产者消费者模型”——包饺子 1包饺子流程 2分工协作 1解释 2问题 三“生产者消费者模型”——分布式系统 1分布式模型 2队列阻塞优化 3缺点 4优点 ①解耦合 ②缓冲压力削峰填谷 四自己实现一个阻塞队列  前引库中自带阻塞队列的数据结构 ​编辑 1自己实现的一个队列 2线程安全问题 1问题一 2阻塞队列部分怎么写 ①用wait ②唤醒问题 ③解决方法 一阻塞队列 1概念 对于一个满的队列入队操作就会陷入阻塞直到这个队列有元素出队后才可以往队列里面加入元素。 对于一个空的队列出队操作就会陷入阻塞直到这个队列有元素入队后才可以对队列进行出队操作 2阻塞队列与普通队列比较 阻塞队列在多线程中是比价安全的 二“生产者消费者模型”——包饺子 1包饺子流程 ①和面一般一个人即可不适用于多线程 ②撵饺子皮 ③包饺子 上述②③可以多线程进行 假设现在有三个滑稽老铁包饺子 假设每个滑稽老铁拿到擀面杖擀了一个皮包了一个饺子在这个过程中滑稽老铁会争夺擀面杖锁竞争虽然比单线程快但是效率还是很低 2分工协作 1解释 上述图一号老铁负责专门撵饺子皮生产2,3号负责包饺子桌子阻塞队列负责传递饺子皮大大提高了包饺子的效率。 2问题 ①1号滑稽撵饺子皮的速度远远大于包饺子的速度导致桌子上全是饺子皮此时桌子就相当于队列阻塞 ②1号滑稽撵饺子皮的速度远远小于包饺子的速度导致桌子上是空的2号3号空闲此时桌子就相当于队列空 三“生产者消费者模型”——分布式系统 1分布式模型 通过上面的简述我们来看实际开发中是怎样的模型 实际开发过程中服务器的整个功能往往是由多个服务器分工它们彼此间通过网络通信进行交互。 2队列阻塞优化 但在上述图中A与BA与C之间的耦合性比较强有一个挂了很可能就会影响到其它的服务器于是我们引入队列阻塞 A和BCD之间不是直接交互了而是通过队列这个中间桥梁进行交互如果B挂了也不会影响到ACD 3缺点 ①系统更复杂了要维护的服务器变多 ②效率降低有阻塞队列这个中间商必然会增加开销了 4优点 ①解耦合 ②缓冲压力削峰填谷 四自己实现一个阻塞队列  前引库中自带阻塞队列的数据结构 在Java标准库中提供了三种现成的带有阻塞队列的数据结构 其中它们的入队列有两种方法put自带阻塞效果offer不带有阻塞效果 下面我们举例一种 ArrayBlockingQueue queue2 new ArrayBlockingQueue(100);try {queue2.put(put方法不带阻塞功能);} catch (InterruptedException e) {throw new RuntimeException(e);}queue2.offer(offer方法带有阻塞功能);try {System.out.println(queue2.take());System.out.println(queue2.take());} catch (InterruptedException e) {throw new RuntimeException(e);} 1自己实现的一个队列 package thread;/*** Created with IntelliJ IDEA.* Description:* User: Hua YY* Date: 2024-09-25* Time: 17:47*/ class MyQueue{String[] elems null;int head 0;//记录出元素时int tail 0;//记录进元素时int size 0;//当前队列中有多少个元素public MyQueue(int capacity){elems new String[capacity];}public void put(String elem){if (size elems.length ){//此时队列满了放不了要在这写阻塞return;}elems[tail] elem;tail;if(tail elems.length){tail 0;}size;}public String take(){if(size 0){return null;}String elem elems[head];head;if (head elems.length){head 0;}size--;return elem;}} public class ThreadDemon31 {public static void main(String[] args) {MyQueue queue new MyQueue(100);queue.put(aaa);queue.put(bbb);queue.put(ccc);queue.put(ddd);System.out.println(开始出队列);System.out.println(queue.take());System.out.println(queue.take());System.out.println(queue.take());System.out.println(queue.take());} }2线程安全问题 1问题一 ①打包成这样可以吗——不行size最后会被写两遍 ②解决方式给整个put方法内部都加上synchronized 2阻塞队列部分怎么写 ①用wait ②唤醒问题 可以看到上述图例假设现在队列满两个put都阻塞take出了 一个元素唤醒了第一个put第一个put又唤醒了第二个put这就出问题了 ③解决方法 详细看明白上面举的例子后继续~~ 我们知道对于wait等待和notify唤醒中间隔着的几秒对于计算机来说可能就会发生翻天覆地的变化。这个if条件句就是被唤醒后其实现状不一定像一开始满足这个if条件句了 于是我们引入替换成——while语句句内的wait被唤醒后会再一次进行条件判断如果此时条件不满足会再一次的陷入wait等待。 在java编译器中也是推荐wait和while循环配套使用。
http://www.w-s-a.com/news/232672/

相关文章:

  • 网站设计制作电话多少网站流量下降
  • 沈阳做网站推广的公司唐山哪家做网站好
  • 国外著名网站建设公司WordPress破解怎样主题修复
  • 网站建设济南云畅网络广州电力建设有限公司网站
  • 查看公司信息的网站思特奇是外包公司吗
  • 制作企业网站的目的啥都能看的浏览器
  • 做网站可以用哪些语言如何进行网站运营与规划
  • 做效果图网站有哪些电子商城网站制作数据库
  • 小刘网站建设wordpress调用php文件上传
  • 建设银行对账网站网络营销广告案例
  • 做网站开票是多少个点的票wordpress扫码提交数据库
  • 织梦网站改版需要怎么做企业网站备案管理系统
  • 大规模网站开发语言宁夏建设职业技术学院网站
  • 寻花问柳专注做一家男人爱的网站北京展台设计制作
  • 中卫网站设计做自己的卡盟网站
  • 广州网站推广自助做网站人家直接百度能搜到的
  • 电子商务网站建设目标及利益分析安徽建设厅网站施
  • 制作网站策划书网站建设公司的性质
  • 哪个网站可以做免费宣传简单的网页设计网站
  • 福州专业网站制作公司金湖建设局网站
  • 好的移动端网站模板下载兰州线上广告推广
  • 宁波高端建站深圳品牌营销策划机构
  • 权威网站优化价格建设厅科技中心网站首页
  • 保定模板建站软件腾讯云做淘客网站
  • 单位建设一个网站的费用正规刷手机单做任务网站
  • 北京定制网站价格开网店怎么卖到外国
  • 做网站 后端是谁来做的工程建设指挥部网站
  • wordpress建站 云打印昆明 网站设计
  • 太原网站建设设计网站建设策划书(建设前的市场分析)
  • 哪里有制作网站电商新手入门知识