Async: ์งˆ๋ฌธ: ์ผ์น˜ํ•˜๋Š” ์ž‘์—…์ด ์ด๋ฏธ ์‚ฝ์ž…๋˜์—ˆ๋Š”์ง€ ํ™•์ธํ•˜๋ ค๋ฉด async.queue๋ฅผ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค.

์— ๋งŒ๋“  2017๋…„ 07์›” 27์ผ  ยท  3์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: caolan/async

์ž…๋ ฅํ•˜๋ ค๋Š” ์ž‘์—…์ด ํ˜„์žฌ ๋Œ€๊ธฐ์—ด์— ์žˆ๋Š” ์ž‘์—…๊ณผ ์ด๋ฏธ ์ผ์น˜ํ•˜๋Š”์ง€ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•ด ํ˜„์žฌ ๋Œ€๊ธฐ์—ด์˜ ์ž‘์—…์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

enhancement queue

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

๋Œ€๊ธฐ์—ด์— ๋Œ€ํ•œ ๊ฐœ์„ ์œผ๋กœ ๋Œ€๊ธฐ์—ด์˜ ํ˜„์žฌ ํ•ญ๋ชฉ์„ ๋ฐ˜๋ณตํ•˜๋Š” ๊ตฌํ˜„์— ๊ตฌ์• ๋ฐ›์ง€ ์•Š๋Š” ๋ฐฉ๋ฒ•์„ ๋…ธ์ถœํ•˜๊ธฐ ์œ„ํ•ด q[Symbol.iterator] ์†์„ฑ์„ ๋…ธ์ถœํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ชจ๋“  3 ๋Œ“๊ธ€

๋Œ€๊ธฐ์—ด์„ ๋ฐ˜๋ณตํ•˜๋Š” ๊ณต์‹์ ์œผ๋กœ ์Šน์ธ๋œ ๋ฐฉ๋ฒ•์€ ์—†์Šต๋‹ˆ๋‹ค. ํ์— ๋Œ€ํ•œ ๊ธฐ๋ณธ ์—ฐ๊ฒฐ ๋ชฉ๋ก์„ ๋…ธ์ถœํ•˜๋Š” q._tasks ์†์„ฑ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์—ฐ๊ฒฐ ๋ชฉ๋ก์„ ๋ฐ˜๋ณตํ•˜๊ฑฐ๋‚˜ q._tasks.toArray().find(...) ๋ฅผ ํ˜ธ์ถœํ•˜์—ฌ ์ž‘์—…์ด ์ด๋ฏธ ์กด์žฌํ•˜๋Š”์ง€ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด๊ฒƒ์€ ๊ตฌํ˜„ ์„ธ๋ถ€ ์‚ฌํ•ญ์ด๋ฏ€๋กœ ๋ฌธ์„œํ™”๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ๋Œ€๊ธฐ์—ด์ด ๋‚ด๋ถ€์ ์œผ๋กœ ์ž‘๋™ํ•˜๋Š” ๋ฐฉ์‹์„ ๋ณ€๊ฒฝํ•˜๋ฉด ๋‚˜์ค‘์— ์ค‘๋‹จ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋Œ€๊ธฐ์—ด์— ๋Œ€ํ•œ ๊ฐœ์„ ์œผ๋กœ ๋Œ€๊ธฐ์—ด์˜ ํ˜„์žฌ ํ•ญ๋ชฉ์„ ๋ฐ˜๋ณตํ•˜๋Š” ๊ตฌํ˜„์— ๊ตฌ์• ๋ฐ›์ง€ ์•Š๋Š” ๋ฐฉ๋ฒ•์„ ๋…ธ์ถœํ•˜๊ธฐ ์œ„ํ•ด q[Symbol.iterator] ์†์„ฑ์„ ๋…ธ์ถœํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋‚˜๋Š” ๋˜ํ•œ ์ด ๊ธฐ๋Šฅ์„ ์›ํ•ฉ๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ๋งŽ์€ ๋Œ€๊ธฐ์—ด์—๋„ ์ด ๊ธฐ๋Šฅ์ด ์žˆ์Šต๋‹ˆ๋‹ค.
q.contains(task)๋Š” ๋งค์šฐ ์œ ์šฉํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค!

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰