๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

์Šค๋ ˆ๋“œํ’€1

[C++] 22. ์Šค๋ ˆ๋“œ ํ’€(Thread Pool), ์ƒ์‚ฐ์ž ์†Œ๋น„์ž ํŒจํ„ด(Producer-consumer) ์ง€๋‚œ ์‹œ๊ฐ„์—์„œ๋Š” ์Šค๋ ˆ๋“œ ์‚ฌ์šฉํ•  ๋•Œ ์ฃผ์˜ํ•  ์ ๊ณผ ์Šค๋ ˆ๋“œ์˜ ์‹ค์ œ ์‚ฌ์šฉ ์˜ˆ์‹œ๋ฅผ ์‚ดํŽด๋ดค์Šต๋‹ˆ๋‹ค. [C++] 21. ์Šค๋ ˆ๋“œ ๊ฒฝ์Ÿ ์ƒํƒœ(Race condition), ๋ฎคํ…์Šค(mutex), ๋ฐ๋“œ๋ฝ, std::conditional_variable, std::async ์ด๋ฒˆ ์‹œ๊ฐ„์—๋Š” ์Šค๋ ˆ๋“œ ํŒจํ‚ค์ง€์˜ ๋งˆ์ง€๋ง‰ ์‹œ๊ฐ„, ์Šค๋ ˆ๋“œ ํ’€์— ๋Œ€ํ•ด์„œ ์‚ดํŽด๋ณด์‹œ์ฃ ! ์ƒ์‚ฐ์ž-์†Œ๋น„์ž ํŒจํ„ด(Producer-Consumer) Producer-Consumer ํŒจํ„ด์€ ์†Œํ”„ํŠธ์›จ์–ด ๋””์ž์ธ์—์„œ ์‚ฌ์šฉ๋˜๋Š” ์ค‘์š”ํ•œ ๋””์ž์ธ ํŒจํ„ด ์ค‘ ํ•˜๋‚˜๋กœ, ๋‹ค๋ฅธ ์ปดํฌ๋„ŒํŠธ ๊ฐ„์˜ ์ž‘์—…์„ ๋ถ„๋ฆฌํ•˜๊ณ  ์กฐ์ ˆํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ์ด ํŒจํ„ด์€ ๋‹ค์ˆ˜์˜ ์ƒ์‚ฐ์ž(Producer)์™€ ์†Œ๋น„์ž(Consumer) ๊ฐ„์˜ ํ˜‘๋ ฅ์„ ํšจ๊ณผ์ ์œผ๋กœ ๊ด€๋ฆฌํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ์ƒ์‚ฐ์ž ์†Œ๋น„์ž ํŒจํ„ด์€ ๋ฐ์ดํ„ฐ์˜ ์ง„์ž…(income).. 2023. 9. 4.