Automatic batching
Automatic batching
batching์ด๋ ์ ๋ฐ์ดํธ ๋์์ด ๋๋ ์ํ๊ฐ๋ค์ ํ๋๋ก ๋ฌถ์ด ํ๋ฒ์ ๋ฆฌ๋ ๋๋ง์ ์ ๋ฐ์ดํธ๊ฐ ๋ชจ๋ ์งํ๋๋๋ก ํด์ฃผ๋ ๊ฒ์ ์๋ฏธํ๋ค.
ํ๋์ ํจ์ ๋ด์์ setState๋ฅผ ์ฌ๋ฌ๋ฒ ํธ์ถํด๋ ๋ฆฌ๋ ๋๋ง์ ํ ๋ฒ๋ง ๋ฐ์ํ๋ค.
ํจ์์ ๋์์ ์ ๋ฐ์ดํธ ๋๋ฉฐ ๋ฆฌ์ํธ๋ ๋ง์ง๋ง์ ํ๋ฒ ๋ฆฌ๋ ๋๋ง์ ์ํจ๋ค.
์ฌ๋ฌ๋ฒ์ ๋ถํ์ํ ๋ฆฌ๋ ๋๋ง์ ๋ฐฉ์งํ๊ธฐ ๋๋ฌธ์ ์ฑ๋ฅ์ ์ด์ ์ด ์๋ค.
v18 ์ด์ ๋ฒ์ ์์๋ batch update๊ฐ ์ง์ ๋์์ง๋ง ํด๋ฆญ๊ณผ ๊ฐ์ ๋ธ๋ผ์ฐ์ ์ด๋ฒคํธ์์๋ง ์ ์ฉ์ด ๊ฐ๋ฅํ๊ณ api ํธ์ถ ์ฝ๋ฐฑํจ์๋ timeout ํจ์์์๋ ์๋ํ์ง ์์๋ค.
React 18์์์ Batching
์ด๋ฒคํธ ํธ๋ค๋ฌ ๋ฐ์์๋ ๋์ํ๋๋ก ๋ณ๊ฒฝ๋์๋ค.
ํ์ํ ๋ bach ์ ๋ฐ์ดํธ๋ฅผ ์ ์ธ์ํฌ ์ ์๋ ๊ธฐ๋ฅ์ด ์ถ๊ฐ ๋์๋ค.
batch ์
๋ฐ์ดํธ๋ฅผ ํ์ง ์์ผ๋ ค๋ฉด?
์ผ๋ฐ์ ์ธ ์ํฉ์์๋ ์ผ๊ด ์ฒ๋ฆฌ๊ฐ ์์ ํ์ง๋ง, ์ผ๋ถ ์ฝ๋๋ ์ํ ๋ณ๊ฒฝ ์งํ DOM์์ ๋ฌด์ธ๊ฐ๋ฅผ ์ฝ๋๋ฐ ์์กดํ ์ ์๋ค.
์ด๋ฌํ ๊ฒฝ์ฐ ReactDOM.flushSync()
๋ฅผ ์ฌ์ฉํ์ฌ ์ผ๊ด ์ฒ๋ฆฌ๋ฅผ ์ตํธ์์ ์ํฌ ์ ์๋ค.
Last updated