You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Krome Plasma (JIRA)" <ji...@apache.org> on 2016/07/18 20:18:20 UTC

[jira] [Commented] (IGNITE-638) Implement IgniteSemaphore data structure

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

Krome Plasma commented on IGNITE-638:
-------------------------------------

Have a question, why not support a fair semaphore option ? It would be useful when trying to acquire all permits for write lock behavior and have multiple writers on multiple nodes.

> Implement IgniteSemaphore data structure
> ----------------------------------------
>
>                 Key: IGNITE-638
>                 URL: https://issues.apache.org/jira/browse/IGNITE-638
>             Project: Ignite
>          Issue Type: Sub-task
>          Components: data structures
>            Reporter: Dmitriy Setrakyan
>            Assignee: Denis Magda
>              Labels: features, newbie
>             Fix For: 1.5.0.final
>
>
> We need to add {{IgniteSemaphore}} data structure in addition to other data structures provided by Ignite. {{IgniteSemaphore}} should have similar API to {{java.util.concurrent.IgniteSemaphore}} class in JDK.
> As an example, you can see how [IgniteCountDownLatch|https://github.com/apache/incubator-ignite/blob/master/modules/core/src/main/java/org/apache/ignite/IgniteCountDownLatch.java] is implemented in [GridCacheCountDownLatchImpl|https://github.com/apache/incubator-ignite/blob/master/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/GridCacheCountDownLatchImpl.java] class.
> In general we need to have an entity in ATOMIC cache storing number of permits and allow user threads to block whenever no more permits are available.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)