--- id: P-REINFORCE-AUTO-183DC1 category: "10_Wiki/๐Ÿ’ก Topics/AI" confidence_score: 0.90 tags: [auto-reinforced] last_reinforced: 2026-04-20 github_commit: "[P-Reinforce] Continuous Worker - Long Tasks" --- # [[Long Tasks|Long Tasks]] ## ๐Ÿ“Œ ํ•œ ์ค„ ํ†ต์ฐฐ (The Karpathy Summary) > ๋กฑ ํƒœ์Šคํฌ(Long Tasks)๋Š” ๋ธŒ๋ผ์šฐ์ €์˜ ๋ฉ”์ธ ์Šค๋ ˆ๋“œ๋ฅผ 50ms ์ด์ƒ ์žฅ์‹œ๊ฐ„ ์ฐจ๋‹จํ•˜๋Š” ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์—ฐ์‚ฐ ๋“ฑ์˜ CPU ์ฒ˜๋ฆฌ ์ž‘์—…์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค [1]. ์ด๋Ÿฌํ•œ ์ž‘์—…์€ ์งง์€ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ์ž‘์—…๋ณด๋‹ค ์‚ฌ์šฉ์ž ์ƒํ˜ธ์ž‘์šฉ(Interaction)์„ ํ›จ์”ฌ ๋” ์ง€์—ฐ์‹œํ‚ค๋ฉฐ, ์›น์‚ฌ์ดํŠธ๋ฅผ ๋А๋ฆฌ๊ฒŒ ๋А๊ปด์ง€๊ฒŒ ๋งŒ๋“œ๋Š” ์ฃผ๋œ ์›์ธ์ด ๋ฉ๋‹ˆ๋‹ค [2]. ## ๐Ÿ“– ๊ตฌ์กฐํ™”๋œ ์ง€์‹ (Synthesized Content) - **์ •์˜ ๋ฐ ์„ฑ๋Šฅ์— ๋ฏธ์น˜๋Š” ์˜ํ–ฅ:** ๋กฑ ํƒœ์Šคํฌ๋Š” ๋ธŒ๋ผ์šฐ์ €์˜ ๋ฉ”์ธ ์Šค๋ ˆ๋“œ๋ฅผ 50๋ฐ€๋ฆฌ์ดˆ(ms) ์ด์ƒ ์ฐจ๋‹จํ•˜๋Š” ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์—ฐ์‚ฐ์„ ๋งํ•ฉ๋‹ˆ๋‹ค [1]. ๋ธŒ๋ผ์šฐ์ €์˜ CPU ์ฒ˜๋ฆฌ ์ž‘์—… ์ค‘ ๋กฑ ํƒœ์Šคํฌ๋Š” ์‚ฌ์šฉ์ž ์ƒํ˜ธ์ž‘์šฉ์„ ์ฒ˜๋ฆฌํ•˜๋Š” ๊ฒƒ์„ ๋ฐฉํ•ดํ•˜์—ฌ ์‘๋‹ต์„ฑ์„ ์ง€์—ฐ์‹œํ‚ต๋‹ˆ๋‹ค [2]. ์ด๋Š” ์‚ฌ์šฉ์ž ๊ฒฝํ—˜์„ ์ €ํ•˜์‹œํ‚ค๋ฉฐ, ๊ตฌ๊ธ€์˜ Core Web Vitals ์ง€ํ‘œ ์ค‘ ํ•˜๋‚˜์ธ INP(Interaction to Next Paint) ์ ์ˆ˜๋ฅผ ์•…ํ™”์‹œํ‚ค๋Š” ์ฃผ์š” ์›์ธ์ด ๋ฉ๋‹ˆ๋‹ค [1, 3]. - **์‹๋ณ„ ๋ฐ ๋ชจ๋‹ˆํ„ฐ๋ง ๋ฐฉ๋ฒ•:** ๊ฐœ๋ฐœ์ž๋Š” Chrome DevTools์˜ Performance(์„ฑ๋Šฅ) ํŒจ๋„์„ ํ†ตํ•ด ๋กฑ ํƒœ์Šคํฌ๋ฅผ ๋ฐœ๊ฒฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์„ฑ๋Šฅ ํ”„๋กœํŒŒ์ผ๋ง ์‹œ ๊ธด ์‹œ๊ฐ„์ด ์†Œ์š”๋œ Task์—๋Š” ๋นจ๊ฐ„์ƒ‰ ์‚ผ๊ฐํ˜• ๊ฒฝ๊ณ ๊ฐ€ ํ‘œ์‹œ๋˜์–ด ์„ฑ๋Šฅ ๋ณ‘๋ชฉ ํ˜„์ƒ์ด ๋ฐœ์ƒํ–ˆ์Œ์„ ์•Œ๋ฆฝ๋‹ˆ๋‹ค [4, 5]. ๋˜ํ•œ Long Animation Frames API๋ฅผ ํ™œ์šฉํ•˜์—ฌ ์‚ฌ์šฉ์ž ์ƒํ˜ธ์ž‘์šฉ์„ ์ง€์—ฐ์‹œํ‚ค๋Š” ํŠน์ • ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์‹๋ณ„ํ•˜๊ณ  ๋ถ„์„ํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค [6, 7]. - **์ตœ์ ํ™” ๋ฐ ํ•ด๊ฒฐ ์ „๋žต:** ์ƒํ˜ธ์ž‘์šฉ ์‘๋‹ต์„ฑ์„ ๊ฐœ์„ ํ•˜๋ ค๋ฉด ๋กฑ ํƒœ์Šคํฌ๋ฅผ ์ชผ๊ฐœ์–ด ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ๋ Œ๋”๋ง ๋ฐ ์ž…๋ ฅ์„ ์ฒ˜๋ฆฌํ•  ์‹œ๊ฐ„์„ ํ™•๋ณดํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค [1]. ์ œ๊ณต๋œ ์†Œ์Šค์—์„œ ๊ถŒ์žฅํ•˜๋Š” ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค. - **์ž‘์—… ๋ถ„ํ• (Task Splitting):** ๋ฌด๊ฑฐ์šด ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ํ•จ์ˆ˜๋ฅผ ๋” ์ž‘์€ ๋น„๋™๊ธฐ ์ฒญํฌ(async chunks)๋กœ ๋‚˜๋ˆ•๋‹ˆ๋‹ค [1]. - **Scheduler API ์‚ฌ์šฉ:** `scheduler.yield()`์™€ ๊ฐ™์€ ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ž‘์—… ์ค‘๊ฐ„์— ๋ธŒ๋ผ์šฐ์ € ์Šค์ผ€์ค„๋Ÿฌ๋กœ ์ œ์–ด๊ถŒ์„ ๋„˜๊ฒจ(yield) ์‚ฌ์šฉ์ž ์ƒํ˜ธ์ž‘์šฉ์„ ๋จผ์ € ์ฒ˜๋ฆฌํ•˜๊ฒŒ ํ•œ ๋’ค ๋‚จ์€ ์ž‘์—…์„ ๊ณ„์† ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค [2]. - **๋ฉ”์ธ ์Šค๋ ˆ๋“œ ์˜คํ”„๋กœ๋”ฉ:** Web Workers๋ฅผ ํ™œ์šฉํ•˜์—ฌ ๋ฌด๊ฑฐ์šด ๋กœ์ง์„ ๋ฉ”์ธ ์Šค๋ ˆ๋“œ์—์„œ ๋ถ„๋ฆฌํ•˜์—ฌ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค [1, 8]. - **์Šค์ผ€์ค„๋ง ๋ฐ ์ง€์—ฐ ๋กœ๋”ฉ:** `requestIdleCallback`์„ ์‚ฌ์šฉํ•˜์—ฌ ์ค‘์š”๋„๊ฐ€ ๋‚ฎ์€ ์ž‘์—…์˜ ์‹คํ–‰์„ ๋ฏธ๋ฃจ๊ฑฐ๋‚˜, ์ค‘์š”ํ•˜์ง€ ์•Š์€ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์˜ ๋กœ๋”ฉ์„ ์ง€์—ฐ(defer) ๋ฐ ์ง€์—ฐ ๋กœ๋”ฉ(lazy load) ์ฒ˜๋ฆฌํ•ฉ๋‹ˆ๋‹ค [1, 9]. ## โš ๏ธ ๋ชจ์ˆœ ๋ฐ ์—…๋ฐ์ดํŠธ (Contradictions & RL Update) - **๊ณผ๊ฑฐ ๋ฐ์ดํ„ฐ์™€์˜ ์ถฉ๋Œ:** ์ž๋™ํ™” ์—”์ง„์— ์˜ํ•ด ๋งคํ•‘๋œ ์ง€์‹์œผ๋กœ, ์ถ”ํ›„ ์ •๋ฐ€ ๊ฒ€์ฆ ํ•„์š”. - **์ •์ฑ… ๋ณ€ํ™”:** AI ๋ถ„์•ผ์˜ ์ž๋™ ์ž์‚ฐํ™” ์ˆ˜ํ–‰. ## ๐Ÿ”— ์ง€์‹ ์—ฐ๊ฒฐ (Graph) - **Related Topics:** [[Interaction to Next Paint (INP)|Interaction to Next Paint (INP)]], [[Main Thread|Main Thread]], [[Scheduler API|Scheduler API]], [[Chrome DevTools|Chrome DevTools]] - **Projects/Contexts:** [[Core Web Vitals|Core Web Vitals]], [[Web Performance Optimization|Web Performance Optimization]] - **Contradictions/Notes:** ์†Œ์Šค ๊ฐ„์˜ ๋ชจ์ˆœ๋œ ๋‚ด์šฉ์€ ๋ฐœ๊ฒฌ๋˜์ง€ ์•Š์•˜์œผ๋ฉฐ, ์ œ๊ณต๋œ ์ž๋ฃŒ๋“ค์€ ๊ณตํ†ต์ ์œผ๋กœ ์›น ์„ฑ๋Šฅ ํ–ฅ์ƒ์„ ์œ„ํ•ด ๋กฑ ํƒœ์Šคํฌ๋ฅผ ์‹๋ณ„ํ•˜๊ณ  ๋ถ„ํ• ํ•˜๋Š” ๊ฒƒ์˜ ์ค‘์š”์„ฑ์„ ๊ฐ•์กฐํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. --- *Last updated: 2026-04-19* - Raw Source: 00_Raw/2026-04-20/Long Tasks.md ---