Skip to content

withoutboats/waitmap

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

waitmap

waitmap version

Wait Map is an async/await concurrency primitive implemented as a concurrent hashmap. It is built on top of the dashmap concurrent hashmap, with an additional "wait" API.

The wait API lets users wait on one task for an entry to be filled by another task. For example:

let map: WaitMap<String, Value>;

// This will wait until a value is put under the key "Rosa Luxemburg"
if let Some(value) = map.wait("Rosa Luxemburg").await {
    // ...
}

It also supports a cancellation API, to cause any task waiting on an entry being filled to stop waiting (the future evaluating to None, just as if they had called get and the key was empty):

// This will cause the other task to stop waiting, it receives a `None` value:
map.cancel("Rosa Luxemburg");

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Languages