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

网站信息化建设东莞网站建设制作公司排名

网站信息化建设,东莞网站建设制作公司排名,成都网站优化维护,免费发布信息的平台简单介绍我们以饭店为例#xff0c;假设饭店只有三个座位#xff0c;一开始三个座位都是空的。这时如果同时来了三个客人#xff0c;服务员人允许他们进去用餐#xff0c;然后对外说暂无座位。后来的客人必须在门口等待#xff0c;直到有客人离开。这时#xff0c;如果有…简单介绍我们以饭店为例假设饭店只有三个座位一开始三个座位都是空的。这时如果同时来了三个客人服务员人允许他们进去用餐然后对外说暂无座位。后来的客人必须在门口等待直到有客人离开。这时如果有一个客人离开服务员告诉客人可以进来用餐如果又有客人离开则又可以进来客人用餐如此往复。在这个饭店中座位是公共资源每个人好比一个线程服务员起的就是信号量的作用。信号量是一个非负整数表示了当前公共资源的可用数目(在上面的例子中可以用空闲的座位类比信号量)当一个线程要使用公共资源时(在上面的例子中可以用客人比线程)首先要查看信号量如果信号量的值大于1则将其减1然后去占有公共资源。如果信号量的值为0则线程会将自己阻塞直到有其它线程释放公共资源。1、简单介绍Semaphorea、可用来控制同时访问特定资源的线程数量以此来达到协调线程工作。b、维护了一个虚拟的资源池如果许可为0则线程阻塞等待直到许可大于0时又可以有机会获取许可了。c、 内部也有公平锁、非公平锁来访问资源的静态内部类。2、Semaphore方法a、public Semaphore(int permits);// 创建一个给定许可数量的信号量对象且默认以非公平锁方式获取资源b、public Semaphore(int permits, boolean fair);//创建一个给定许可数量的信号量对象且是否公平方式由传入的fair布尔参数值决定c、public void acquire() ;//从此信号量获取一个许可当许可数量小于零时则阻塞等待d、public void acquire(int permits) ;//从此信号量获取permits个许可当许可数量小于零时则阻塞等待但是当阻塞等待的线程被唤醒后发现被中断过的话则会抛InterruptedException异常e、public void acquireUninterruptibly(int permits) ;从此信号量获取permits个许可当许可数量小于零时则阻塞等待但是当阻塞等待的线程被唤醒后发现被中断过的话则不会抛InterruptedException异常f、public void release();//释放一个许可g、public void release(int permits);释放permits个许可以上只是列出主要方法名方法详细解释Semaphore类上面都有注释。就不一一累出来了。举一个简单例子帮助我们加深印象/*** author shuliangzhao* Title: SemaPhoreTest* ProjectName design-parent* Description: TODO* date 2019/6/5 22:50*/public class SemaPhoreTest {private Semaphore semaphore new Semaphore(3);class TaskThread implements Runnable{private int id;public TaskThread(int id) {this.id id;}Overridepublic void run() {try {semaphore.acquire();System.out.println(Thread id is working);Thread.sleep(2000);semaphore.release();System.out.println(Thread id is over);} catch (InterruptedException e) {e.printStackTrace();}}}public static void main(String[] args) {SemaPhoreTest semaPhoreTest new SemaPhoreTest();/*for (int i 0;i6;i) {Thread thread new Thread(semaPhoreTest.new TaskThread(i));thread.start();}*/ExecutorService executorService Executors.newCachedThreadPool();//同步队列线程executorService.submit(semaPhoreTest.new TaskThread(1));executorService.submit(semaPhoreTest.new TaskThread(2));executorService.submit(semaPhoreTest.new TaskThread(3));executorService.submit(semaPhoreTest.new TaskThread(4));executorService.submit(semaPhoreTest.new TaskThread(5));executorService.submit(semaPhoreTest.new TaskThread(6));executorService.submit(semaPhoreTest.new TaskThread(7));executorService.shutdown();}}运行结果
http://www.yutouwan.com/news/29029/

相关文章:

  • 风景区网站建设项目建设可行性酒店网络设计方案
  • 内蒙古城乡建设厅网站如何制作手机网站模板
  • 在国内做电商网站需要什么审核合合肥网站建设
  • 新一代 网站备案wordpress弹框
  • 口碑好的网站开发邢台经济开发区
  • 天津网站建设培训课件网络营销推广方法包括有哪些
  • 家具设计网温州seo网站推广
  • 做文创的网站一般做企业网站需要什么资料
  • 单机怎么做网站室内建筑设计
  • html5响应式网站模板用iis做的网站怎么更改端口
  • 建设游戏网站目的及其定位如何免费建立一个自己的网站
  • 图片制作成动态视频珠海关键词优化平台
  • 怎样建设那种游戏网站wordpress文章添加版权
  • 国外什么网站是做外贸电商网站建设概念
  • 扁平网站配色拓者吧室内设计网app
  • 做门户网站 公司营业范围是啥手机应用开发工具
  • 网站集群建设合同做国外的众筹网站
  • 网站建设需要了解的做淘宝美工和网站设计那个好
  • 建筑设计找工作的网站凌风wordpress
  • 福田网站建设费用预算个人微信小程序怎么做
  • 兰州建设网站的公司网站怎么添加广告代码
  • 大良网站建设服务怎么注册网店
  • 安阳做网站的费用广告设计与制作学啥
  • 网站栏目架构小程序商城图标素材
  • 北京网站开发建设公司网站描述多个词怎么分隔
  • 上海制作企业网站查看网站建设的特点
  • 汝州市建设局网站著名的国外设计网站有哪些
  • 池州网站网站建设cpc引流做网站cpa推广
  • 淘宝怎么发布网站建设wordpress插件手动安装插件
  • 凡总创业网站企业网络推广运营技巧