【发布时间】:2015-09-04 03:36:29
【问题描述】:
信号量 sema = new Semaphore(1);
创建一个Semaphore对象并默认初始化,只有一个license,当多个线程同时试图获取license时,必须改是只有一个线程可以访问权限,然后其他线程会在外面等待,当第一个线程释放许可证,然后等待线程有权获得许可证或者只是第一个到达并等待线程有权获得 谁能帮帮我,我将不胜感激
【问题讨论】:
-
对不起,很难理解你在问什么。这些中的任何一个都大致相当于您的问题吗? “当多个线程正在等待来自
Semaphore的许可时,线程将按什么顺序接收它们?” “如何配置Semaphore之类的东西,以便在多个线程等待许可时赋予某些线程更高的优先级?” -
@Alden 我的意思是,默认情况下,阻塞线程是按优先级获取的信号量?你懂吗
-
在那条评论中,我不理解“是信号量”和“优先获取”。
-
@Alden 当多个线程正在等待来自信号量的许可时,线程将按什么顺序接收它们?
标签: java semaphore java.util.concurrent