[Go] ๊ณ ๋ฃจํ‹ด(goroutine)

๊ณ ๋ฃจํ‹ด์€ go์˜ ๋ณ‘ํ–‰ ์ฒ˜๋ฆฌ ๋งค์ปค๋‹ˆ์ฆ˜์ด๋‹ค. ์ผ์ข…์˜ ๊ฐ€๋ฒผ์šด ์Šค๋ ˆ๋“œ๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ๋‹ค.

์‚ฌ์šฉ๋ฒ•์€ ๊ฐ„๋‹จํ•˜๋‹ค. ํ•จ์ˆ˜ ํ˜ธ์ถœ ์•ž์— go๋ฅผ ๋ถ™์ด๋ฉด ๊ทธ ํ˜ธ์ถœ์€ ๋น„๋™๊ธฐ๋กœ ์ž‘๋™ํ•œ๋‹ค.
go๋กœ ํ˜ธ์ถœํ•œ ํ•จ์ˆ˜๋Š” ์ปดํŒŒ์ผ๋Ÿฌ์˜ ํŒ๋‹จ์— ๋”ฐ๋ผ ์ถ”๊ฐ€ ์Šค๋ ˆ๋“œ๋ฅผ ์ƒ์„ฑํ•  ์ˆ˜๋„ ์žˆ๊ณ  ํ•˜๋‚˜์˜ ์Šค๋ ˆ๋“œ๋ฅผ ์ž˜๋ผ์“ธ์ˆ˜๋„ ์žˆ๋‹ค.

์•„๋ž˜๋Š” ๊ฐ„๋‹จํ•œ ์˜ˆ์‹œ๋‹ค. ์ผ๋ฐ˜ ์ •์ˆ˜์—ฐ์‚ฐ์€ ๋„ˆ๋ฌด ๋นจ๋ผ์„œ ์ฒด๊ฐ์ด ์•ˆ๋˜๋ฏ€๋กœ, time ํŒจํ‚ค์ง€๋ฅผ ๊ฐ–๋‹ค๊ฐ€ ์ž ๊น์”ฉ sleep์„ ๊ฑธ์–ด ๋ฉˆ์ถ”๊ฒŒ ํ–ˆ๋‹ค.

๊ทธ๋ฆฌ๊ณ  main์—์„œ๋„ sleep์„ ๊ฑธ์–ด๋†จ๋‹ค. ์ €๋ ‡๊ฒŒ ์•ˆํ•˜๋ฉด go๋ฃจํ‹ด๋“ค๋ณด๋‹ค main์ด ๋จผ์ € ์ฃฝ์–ด๋ฒ„๋ ค์„œ ์ œ๋Œ€๋กœ ๋Œ์งˆ ์•Š๋Š”๋‹ค. image

image ๋™์‹œ์— ๋’ค์ฃฝ๋ฐ•์ฃฝ ๋„๋Š”๊ฑธ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.


๋‹น์—ฐํžˆ ์ต๋ช…ํ•จ์ˆ˜์—๋„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.