Skip to content

Commit 0c5cc5c

Browse files
committed
Add async programming
1 parent cf0c233 commit 0c5cc5c

1 file changed

Lines changed: 26 additions & 0 deletions

File tree

β€ŽSKILLS.mdβ€Ž

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,3 +31,29 @@
3131
| 🟨 ...spread | | 🟦 lambda | 🟨 global | 🟨 node.js |
3232
| 🟨 ...rest | | | 🟨 undefined | 🟨 npm |
3333
| 🟨 typeof | | | 🟦 null | |
34+
35+
## Asynchronous programming
36+
37+
| Async contracts | JavaScript & Node.js specific | Theory | Techniques |
38+
|------------------------|--------------------------------|---------------------|-----------------------|
39+
| 🟦 Callback-last | 🟦 Timers | 🟦 Event Loop | 🟦 async.js library |
40+
| 🟦 Error-first | 🟦 setImmediate | 🟦 Async error | 🟦 Async composition |
41+
| 🟦 Promise | 🟦 nextTick | 🟦 try..catch | 🟦 Rx.js |
42+
| 🟦 Async function | 🟦 AbortController | 🟦 Non-blocking | 🟦 Sequential async |
43+
| 🟦 await | 🟦 Promise unhandled rejection | 🟦 Async I/O | 🟦 Parallel async |
44+
| 🟦 Generator | 🟦 Promise double resolve | 🟦 Pattern Reactor | 🟦 Promise.all |
45+
| 🟦 Async Generator | 🟦 child_process | 🟦 CAS operations | 🟦 Promise.allSettled |
46+
| 🟦 Async Iterator | 🟦 worker_threads | 🟦 epoll | 🟦 Promise.race |
47+
| 🟦 Thenable | 🟦 Atomics | 🟦 kqueue | 🟦 Promise.any |
48+
| 🟦 EventEmitter | 🟦 Blockeing operations | 🟦 Completion ports | 🟦 Web Locks API |
49+
| 🟦 Cancelable callback | 🟦 Non-blocking loop for Array | 🟦 Event ports | 🟦 Async Pool |
50+
| 🟦 Cancelable Promise | 🟦 High resolution clock | 🟦 libuv | 🟦 Thread Pool |
51+
| 🟦 Asynchronous Queue | 🟦 Callback hell | 🟦 Race conditions | 🟦 callbackify |
52+
| 🟦 Future | 🟦 Promise hell | 🟦 Dead locks | 🟦 promisify |
53+
| 🟦 Deferred | 🟦 | 🟦 Live locks | 🟦 IPC |
54+
| 🟦 Observer | 🟦 | 🟦 Actor Model | 🟦 Channel API |
55+
| 🟦 Async Collector | 🟦 | 🟦 | 🟦 |
56+
| 🟦 Coroutine | 🟦 | 🟦 | 🟦 |
57+
| 🟦 Goroutine | 🟦 | 🟦 | 🟦 |
58+
59+
TODO: Revealing Constructor

0 commit comments

Comments
Β (0)