[
https://issues.apache.org/jira/browse/LANG-1790?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18047529#comment-18047529
]
Ivan Saric edited comment on LANG-1790 at 12/25/25 5:19 PM:
------------------------------------------------------------
Hello [~smertk] [~ggregory] ,
I have noticed the original PR has stalled for the past 2 months and I decided
to attempt to finish it on my own fork.
Please see PR [https://github.com/apache/commons-lang/pull/1544.]
I used the initial PR at [https://github.com/apache/commons-lang/pull/1475] as
the starting point and implemented the comments from the reviewers that were
not implemented yet.
was (Author: JIRAUSER311916):
Hello [~smertk] [~ggregory] ,
I have noticed the original PR has stalled for the past 2 month and I decided
to attempt to finish it on my own fork.
Please see PR [https://github.com/apache/commons-lang/pull/1544.]
I used the initial PR at [https://github.com/apache/commons-lang/pull/1475] as
the starting point and implemented the comments from the reviewers that were
not implemented yet.
> Fairness setting in TimedSemaphore
> ----------------------------------
>
> Key: LANG-1790
> URL: https://issues.apache.org/jira/browse/LANG-1790
> Project: Commons Lang
> Issue Type: Improvement
> Components: lang.concurrent.*
> Reporter: Mert Kirpici
> Priority: Major
>
> The {{TimedSemaphore}} structure javadocs do not mention anything about
> fairness.
> If this is something that the current implementation does not provide, the
> {{TimedSemaphore}} structure could benefit from a _fairness_ setting like the
> {{java.util.concurrent.Semaphore}} does, which will queue up the threads that
> are blocked by the {{.acquire()}} call and when the timer expires, they will
> be permitted access to the shared resource in a FIFO fashion.
> A possible implementation could be like this in the constructor:
> {{TimedSemaphore(long timePeriod, TimeUnit timeUnit, int limit, boolean
> fair)}}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)