Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

calebboyd/aceink

Repository files navigation

aceink

Useful async tools.

  • createLock
    • a simple counting sempahore
  • createDeferred
    • simple deferred promise
  • q
    • a concurrent work queue
  • each, map
    • optionally concurrent iteration functions
  • gowait
    • convert a promise or promise returning function to [error,result] tuples
  • delay
    • delay ms, optionally resolve an argument
  • noop, identity, once
    • Other useful language functions

Get it on npm: npm install aceink

See the generated documentation here


Example (queue)

import { q } from 'aceink'
const { ready, add, empty } = q(10)
function fetchQux(bar) {
 return fetch(`https://example.com/${bar}`)
}
for (const foo of Array(100).keys()) {
 await ready()
 add(fetchQux, foo)
}
return empty()

Example (gowait)

import { gowait, delay } from 'aceink'
const [err, value] = await gowait(delay(100, 42))
console.log(value) //42

About

Async things that are useful

Resources

License

Stars

Watchers

Forks

Packages

No packages published

AltStyle によって変換されたページ (->オリジナル) /