首页 > 其他分享 >semaphore简单实例

semaphore简单实例

时间:2023-04-20 16:08:15浏览次数:38  
标签:java semaphore System 实例 简单 Semaphore import out semp


semaphore是java里边的信号灯,感觉很像blockqueue,嗯

 

package com.mutiple;

import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.Semaphore;

public class TestSemaphore {
	
	public static void main(String[] args) {
		ExecutorService exec = Executors.newCachedThreadPool();
		
		final Semaphore semp = new Semaphore(5);
		
		for (int i = 0; i < 20; i++) {
			final int no = i;
			Runnable run = new Runnable() {
				
				@Override
				public void run() {
					try {
						semp.acquire();
						System.out.println("Accessing: "+no);
						long time = (long) (Math.random()*10000);
						System.out.println(time);
						Thread.sleep(time);
						semp.release();
						System.out.println("---------------"+semp.availablePermits());
					} catch (InterruptedException e) {
						e.printStackTrace();
					}
				}
			};
			exec.execute(run);
		}
		
		exec.shutdown();
	}

}

 

 

 

标签:java,semaphore,System,实例,简单,Semaphore,import,out,semp
From: https://blog.51cto.com/u_2465818/6209747

相关文章

  • lucene入门实例三 (index索引)
    copy《luceneinaction》的一个索引的例子:  packagecom.s.lucene.LIA.index;importjava.io.IOException;importjunit.framework.TestCase;importorg.apache.lucene.analysis.WhitespaceAnalyzer;importorg.apache.lucene.document.Document;importorg.apache.luce......
  • lucene入门实例二(检索)
    copy一个luceneinaction的例子 packagecom.s.lucene;importjava.io.File;importjava.io.IOException;importorg.apache.lucene.analysis.standard.StandardAnalyzer;importorg.apache.lucene.document.Document;importorg.apache.lucene.queryParser.ParseExcepti......
  • lucene入门实例一(写索引)
    copy一个luceneinaction的入门实例代码:   importjava.io.File;importjava.io.FileFilter;importjava.io.FileReader;importjava.io.IOException;importorg.apache.lucene.analysis.standard.StandardAnalyzer;importorg.apache.lucene.document.Document;impor......
  • ext grid实例
    extgrid的实例代码  //数据加载到列表type1新增record;type2完整record functionshowSemanticsData(type,data,renderDivID) { document.getElementById(renderDivID).innerHTML=""; varcolumns=[{ text:'id', dataIndex:'id', h......
  • 在eclipse中创建一个简单的hibernate项目
    1.在eclipse中新建一个Javaweb项目 2.输入项目名称,点击完成 3.在lib文件中导入jar包 4.在项目的src目录下,新建一个空白文件,命名为hibernate.properties hibernate.properties代码如下:hibernate.dialect=org.hibernate.dialect.MySQLDialecthibernate.connection......
  • python操作pptx设置title字体大小插入全屏图片A4尺寸实例一枚
    pipinstallpython-pptx安装好pptx,设置标题最大的作用是ppt里面的摘要视图显示摘要文字参考:https://python-pptx.readthedocs.io/en/latest/ frompptximportPresentationfrompptx.utilimportCmpwidth,pheight=Cm(29.7),Cm(21)#A4大小297*210left=top=0prs=......
  • 简单的看图软件:XnViewMP 中文激活版
    XnViewMP是一款跨平台的看图软件,它支持多种图片格式,包括常见的JPEG、PNG、GIF、BMP等格式,以及一些较为特殊的格式,如RAW、ICO、PSD等。以下是XnViewMP的一些主要功能:浏览图片:XnViewMP提供了一个直观、简洁的图片浏览器,用户可以轻松地查看和管理图片文件,支持快速的缩放、旋转、裁剪等......
  • 聊聊实例化需求
    前几天星球有同学问了一个问题:需求实例化是什么?我的回复是:将需求故事化。故事一般具有这几个特征:有背景和设定、有过程有逻辑、交代了前因后果。对测试同学来说,日常工作的开展基本都是依托于测试用例,要设计好的测试用例,其本身要求对业务需求和被测系统有足够的理解。但实际情况......
  • 09-HTML5举例:简单的视频播放器
    title:09-HTML5举例:简单的视频播放器publish:true我们采用Bootstrap网站的图标字体,作为播放器的按钮图标。index.html的代码如下:<!DOCTYPEhtml><html><headlang="en"><metacharset="UTF-8"><title></title><!--引入字体图......
  • C# Web实现文件上传下载功能实例解析
    ​IE的自带下载功能中没有断点续传功能,要实现断点续传功能,需要用到HTTP协议中鲜为人知的几个响应头和请求头。 一. 两个必要响应头Accept-Ranges、ETag        客户端每次提交下载请求时,服务端都要添加这两个响应头,以保证客户端和服务端将此下载识别为可以断点续传......