You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Andrey Kuznetsov (JIRA)" <ji...@apache.org> on 2017/09/27 09:18:01 UTC

[jira] [Commented] (IGNITE-2399) Add asynchronous acquire to IgniteSemaphore

    [ https://issues.apache.org/jira/browse/IGNITE-2399?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16182224#comment-16182224 ] 

Andrey Kuznetsov commented on IGNITE-2399:
------------------------------------------

Why should this high-level functionality pollute Semaphore API? Resource acquisition control is not an only semaphore use case. To my mind, it's better to put this method to some utility class like IgniteUtils.

> Add asynchronous acquire to IgniteSemaphore
> -------------------------------------------
>
>                 Key: IGNITE-2399
>                 URL: https://issues.apache.org/jira/browse/IGNITE-2399
>             Project: Ignite
>          Issue Type: Improvement
>          Components: data structures
>            Reporter: Vladisav Jelisavcic
>
> Usually a permit acquisition is followed by an action, followed by a release of the permit. A simple enhancement to the existing Semaphore API can be made that enables asynchronous acquire:
> <T> IgniteFuture<T> acquireAndExecute(Callable<T> action, int numPermits);
> The method would immediately return a future to be later completed by the action's result. Permits are to be released after the future is completed.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)