ย IEnumerator ํ•จ์ˆ˜A

var task =ย ํ•จ์ˆ˜B;

yield return task;

...


async Task<GameObject> ํ•จ์ˆ˜B


GameObject goObject = await Addressables.LoadAssetAsync<GameObject>("").Task;

...



์ด๋Ÿฐ ๊ตฌ์กฐ๋กœ ๋˜์–ด์žˆ๋Š”๋ฐ ์ € ์ฝ”๋“œ๋ฅผ ํƒˆ๋•Œ ์•ฑ์ด ๋’ค์ ธ๋ฒ„๋ฆฌ๋Š”๊ฑฐ์ž„

๋กœ๊ทธ๋ฅผ ์ฐ์–ด๋ณด๋Š”๋ฐ ํ•จ์ˆ˜B ๋กœ๊ทธ ์ฐํžˆ๊ธฐ๋„ ์ „์— ๋ฉˆ์ถฐ๋ฒ„๋ ค์„œ ํ•ด๋งค๋‹ค๊ฐ€

ํ•จ์ˆ˜A ๊ตฌ์กฐ๋ฅผ

ย IEnumerator ํ•จ์ˆ˜A

var task =ย ํ•จ์ˆ˜B;

yield return new WaitUntil(() => task.IsCompleted);

...


์ด๋ ‡๊ฒŒ ๋ฐ”๊พธ๋‹ˆ๊น ์ •์ƒ์ ์œผ๋กœ ๋™์ž‘์„ ํ•˜๋”๋ผ๊ณ 

var task = System.Threading.Tasks.Task.Run(() => CsEffectPoolManager.Instance.GetEffect(csDropObjectQueueNode.StartPosition, EnInGameEffect.DropItem, 0, true, null, m_sprite));


์ด๋ ‡๊ฒŒ ํ•ด๋„ ๋™์ž‘์€ ํ•˜๋˜๋ฐ ์•”ํŠผ


์ฒ˜์Œ ์ƒํƒœ์—์„œ ์™œ ๊ต์ฐฉ์ƒํƒœ๊ฐ€ ์ƒ๊ฒจ์„œ ์•ฑ์ด ์ฃฝ์—ˆ๊ณ 

2๋ฒˆ์งธ ๋ฐ”๊พผ ํ•จ์ˆ˜์—์„œ๋Š” ์™œ ์ •์ƒ๋™์ž‘ํ•˜๋Š”์ง€ ์„ค๋ช…ํ•ด์ค„์ˆ˜ ์žˆ๋Š” ์‚ฌ๋žŒ์žˆ์–ด?