- Theory
- Event loop: 🖐️ used
try..catch
: 🖐️ used- Non-blocking: 🖐️ used
- Async I/O: 👂 heard
- Thread pool: 👂 heard
- Pattern Reactor
- CAS operations
- epoll
- kqueue
- Completion ports
- Event ports
- libuv: 🎓 known
- Race conditions: 👂 heard
- Dead locks
- Live locks
- Concurrent programming
- Parallel programming
- Actor Model
- Thread: 👂 heard
- Process: 👂 heard
- Async contracts
- Callbacks: 🖐️ used
- Callback-last-error-first: 🖐️ used
- Thenable: 🎓 known
- Promise: 🖐️ used
- Async/await: 🖐️ used
- Future: 👂 heard
- Deferred: 👂 heard
- Sync generator: 🖐️ used
- Async Generator: 👂 heard
- Async Iterator: 🎓 known
- Event: 🖐️ used
- Coroutine
- Goroutine
- Signal
- Stream: 🖐️ used
- Chain of responsibility
- Middleware
- Locks
- Async adapters and utils
- callbackify: 👂 heard
- promisify: 👂 heard
- asyncify: 👂 heard
- Callbacks compose: 🎓 known
- Async compose
- Async abstractions interfaces
- EventEmitter: 🖐️ used
- Observable/Observer
- Readable: 🖐️ used
- Writable: 🖐️ used
- Transform: 🎓 known
- Async Pool
- Async Queue
- Async Collector
- Semaphore
- Mutex
- Spin Lock
- JavaScript & Node.js specific
- Timers: 🖐️ used
setImmediate
: 🎓 knownnextTick
- AbortController: 🎓 known
- AbortSignal: 🎓 known
- Promise unhandled rejection: 🎓 known
- Promise double resolve
- Atomics
- High resolution clock
- Callback hell: 🎓 known
- Promise hell: 🎓 known
- ref() and unref()
- Error handling in async code
- Better stack traces with return await
- JSON streaming serialization
- AsyncLocalStorage
- AsyncResource
- Techniques
- Async.js library
- RxJS library
- Promise.all: 🎓 known
- Promise.allSettled
- Promise.race: 🎓 known
- Promise.any: 🎓 known
- Web Locks API
- IPC
- Channel API
- Revealing constructor: 🎓 known