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

做网站用什么web服务器吗天津seo托管

做网站用什么web服务器吗,天津seo托管,金融服务网站建设内容,新疆永升建设集团有限公司网站Semaphore 基本使用 synchronized 可以起到锁的作用,但某个时间段内,只能有一个线程允许执行 Semaphore(信号量)用来限制能同时访问共享资源的线程上限(不是资源数),非重入锁 不像之前的reen…

Semaphore

基本使用

synchronized 可以起到锁的作用,但某个时间段内,只能有一个线程允许执行

Semaphore(信号量)用来限制能同时访问共享资源的线程上限(不是资源数),非重入锁

不像之前的reentrantlock那些是独占锁。Semaphore是共享资源有多个,允许多个线程占有,只是希望对数量进行把控

构造方法:

  • public Semaphore(int permits):permits 表示许可线程的数量(state)

  • public Semaphore(int permits, boolean fair):fair 表示公平性,如果设为 true,下次执行的线程会是等待最久的线程

常用API:

  • public void acquire():表示获取许可

  • public void release():表示释放许可,acquire() 和 release() 方法之间的代码为同步代码

 public static void main(String[] args) {// 1.创建Semaphore对象Semaphore semaphore = new Semaphore(3);​// 2. 10个线程同时运行for (int i = 0; i < 10; i++) {new Thread(() -> {try {// 3. 获取许可semaphore.acquire();sout(Thread.currentThread().getName() + " running...");Thread.sleep(1000);sout(Thread.currentThread().getName() + " end...");} catch (InterruptedException e) {e.printStackTrace();} finally {// 4. 释放许可semaphore.release();}}).start();}}


应用

线程数等于资源数就很合适

  • 单机版限流,仅仅限制线程数,不是限制资源数。

  • 简单连接池。对比享元模式的wait、notify。性能和可读性更好

CountDown

倒计时锁

为什么不用join

  • join也可以使主线程等待3个线程结束再执行。

  • join属于比较底层的api用起来比较繁琐,比如将来肯定是使用线程池,线程都是不断再运行的,肯定不能让某一个线程结束。

基本使用

CountDownLatch:计数器,用来进行线程同步协作,等待所有线程完成倒计时计时

构造器:

  • public CountDownLatch(int count):初始化唤醒需要的 down 几步

常用API:

  • public void await():让当前线程等待,必须 down 完初始化的数字才可以被唤醒,否则进入无限等待【计时(数)器走完】

  • public void countDown():计数器进行减 1(down 1)

应用:同步等待多个 Rest 远程调用结束

 // LOL 10人进入游戏倒计时public static void main(String[] args) throws InterruptedException {CountDownLatch latch = new CountDownLatch(10);ExecutorService service = Executors.newFixedThreadPool(10);String[] all = new String[10];Random random = new Random();​for (int j = 0; j < 10; j++) {int finalJ = j;//常量service.submit(() -> {for (int i = 0; i <= 100; i++) {Thread.sleep(random.nextInt(100));  //随机休眠all[finalJ] = i + "%";System.out.print("\r" + Arrays.toString(all));  // \r代表覆盖}latch.countDown();});}latch.await();System.out.println("\n游戏开始");service.shutdown();}/*[100%, 100%, 100%, 100%, 100%, 100%, 100%, 100%, 100%, 100%]游戏开始
http://www.hengruixuexiao.com/news/13188.html

相关文章:

  • 网站开发是什么语言百度seo收录软件
  • 新闻网站个人可以做吗厦门网站建设公司名单
  • 怎么做网站模块惠州seo优化服务
  • 黄骅做网站|黄骅网站|黄骅百度优化|黄骅百度推广|黄骅微信|黄骅百度推广培训班
  • 查看一个网站的源代码做评价桌面百度
  • 最专业的网站设计公司有哪些网络营销制度课完整版
  • 新闻app开发惠州百度seo哪里强
  • 最新免费下载ppt模板网站为什么外包会是简历污点
  • 织梦系统怎么做单页网站seo优化工具哪个好
  • 做理财的网站有哪些内容网络优化工作内容
  • 动漫人物做羞羞事的网站百度网站怎样优化排名
  • 湘潭哪里做网站 电话泰安seo推广
  • 台州网站建设解决方案百度推广怎么开户
  • 交互做的不好的网站南宁整合推广公司
  • 专门做流程图的网站百度推广一天费用200
  • 电商平台网站技术开发网站维护工作内容
  • 网站建设空间是指什么seo关键词优化排名哪家好
  • 免费学建筑知识网站找培训机构的app
  • 怎么用模板建网站搜索引擎网址
  • 服务器做ssr后还可以做网站吗优化大师软件大全
  • 南宁快速网站建设电话google play应用商店
  • 红河州做网站新手如何自己做网站
  • 网站建设中的图片百度竞价托管靠谱吗
  • 上海做网站产品推广软文范文
  • 吕梁建站公司域名查询seo
  • 做暖网站关键词批量调词软件
  • 苹果cms网站广告怎么做上海网络推广排名公司
  • 做网站前需要准备什么条件app下载注册推广平台
  • 公司网站建设方案书例文创意设计
  • 八上电脑课做网站需要什么软件企业网站怎么推广