Syncronize

๋‘˜ ์ด์ƒ์˜ ์Šค๋ ˆ๋“œ๊ฐ€ ํ•˜๋‚˜์˜ ๊ณต์œ ์ž์›์„ writeํ•  ๋•Œ(๊ฒฝํ•ฉ์ƒํƒœ) ๋ฐœ์ƒํ•˜๋Š” ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐฉ์‹์ด๋‹ค.

๋ฉ€ํ‹ฐ ํ”„๋กœ์„ธ์Šค ๋‘ ๊ฐ€์ง€ ์ด์ƒ์˜ ์ž‘์—…์ด ์„œ๋กœ ์ž‘์—…์ด ๋๋‚˜๊ธฐ๋งŒ์„ ๊ธฐ๋‹ค๋ฆฌ๋Š” ์ƒํƒœ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์„œ๋กœ๊ฐ€ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๊ณต์œ  ์ž์›์„ ์ž„๊ณ„ ์˜์—ญ์ด๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

Syncronize๋กœ ๋˜์–ด์žˆ๋Š” ๋ถ€๋ถ„์€ ํ•œ๋ฒˆ์— ํ•˜๋‚˜์˜ ์Šค๋ ˆ๋“œ๋งŒ ์ ‘๊ทผ์„ ํ—ˆ์šฉํ•˜์—ฌ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•ฉ๋‹ˆ๋‹ค

How do code?

์˜ˆ์ œ๋Š” ๊ทน์ ์œผ๋กœ ์—ฐ์ถœํ•˜๊ธฐ ์œ„ํ•ด ์—ฌ๋Ÿฌ๊ฐœ๋ฅผ ์‹คํ–‰ ํ–ˆ์Šต๋‹ˆ๋‹ค.

balance >= money๊ณผ acc.getBalance() > 0 ๋ผ๋Š” ์ถœ๊ธˆ ๋ฐฉ์ง€๋ฅผ ์ด์ค‘์œผ๋กœ ๋ง‰์€ ์กฐ๊ฑด๋ฌธ์ด ์žˆ์Œ์—๋„ ๊ฒฐ๊ณผ๋Š” -1300์ด ๋œ๊ฒƒ์„ ๋ณผ ์ˆ˜์žˆ๋‹ค.

With Syncronized

Syncronized๋ฅผ ์ถ”๊ฐ€ํ•˜๋‹ˆ withdraw์— ์‹คํ–‰์—๋Š” ๋‹จํ•˜๋‚˜์˜ ์“ฐ๋ ˆ๋“œ๋งŒ ์ ‘๊ทผ ํ•  ์ˆ˜ ์žˆ๋Š”๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Last updated