Security News
Fluent Assertions Faces Backlash After Abandoning Open Source Licensing
Fluent Assertions is facing backlash after dropping the Apache license for a commercial model, leaving users blindsided and questioning contributor rights.
com.github.romix:java-concurrent-hash-trie-map
Advanced tools
Java implementation of a concurrent trie hash map from Scala collections library
This is a Java port of a concurrent trie hash map implementation from the Scala collections library. It is almost a line-by-line conversion from Scala to Java.
Idea + implementation techniques can be found in these reports written by Aleksandar Prokopec:
The original Scala implementation can be found here and is a part of scala.collection.concurrent:
Some of the tests and implementation details were borrowed from this project:
Implementation status :
ctrie is a lock-Free Concurrent Hash Array Mapped Trie.
A concurrent hash-trie or Ctrie is a concurrent thread-safe lock-free implementation of a hash array mapped trie.
It is used to implement the concurrent map abstraction. It has particularly scalable concurrent insert and remove operations and is memory-efficient.
It supports O(1), atomic, lock-free snapshots which are used to implement linearizable lock-free size, iterator and clear operations. The cost of evaluating the (lazy) snapshot is distributed across subsequent updates, thus making snapshot evaluation horizontally scalable.
The original Scala-based implementation of the Ctrie is a part of the Scala standard library since the version 2.10.
More info about Ctries:
This library is licensed under the Apache 2.0 license.
Usage of this library is very simple. Simply import the class com.romix.scala.collection.concurrent.TrieMap and use it as a usual Map.
import com.romix.scala.collection.concurrent.TrieMap;
Map myMap = new TrieMap <Object, Object> ();
myMap.put("key", "value");
Use a usual mvn clean install
The prebuilt binaries of the library are available from Maven central. Please use the following dependency in your POM files:
<dependency>
<groupId>com.github.romix</groupId>
<artifactId>java-concurrent-hash-trie-map</artifactId>
<version>0.2.1</version>
</dependency>
This library is self-contained. It does not depend on any additional libraries. In particular, it does not require the rather big Scala's standard library to be used.
FAQs
Java implementation of a concurrent trie hash map from Scala collections library
We found that com.github.romix:java-concurrent-hash-trie-map demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 0 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Fluent Assertions is facing backlash after dropping the Apache license for a commercial model, leaving users blindsided and questioning contributor rights.
Research
Security News
Socket researchers uncover the risks of a malicious Python package targeting Discord developers.
Security News
The UK is proposing a bold ban on ransomware payments by public entities to disrupt cybercrime, protect critical services, and lead global cybersecurity efforts.