Unity/기타
Task async awit 로 쓰레드 사용하기
소나무꼴
2019. 9. 17. 18:11
async public void OnButtonClick4()
{
Debug.LogFormat("ID {0}", Thread.CurrentThread.ManagedThreadId);
{
Debug.Log("OnButtonClick4-1 Init ");
var cancelTokenSource = new CancellationTokenSource();
var aa = Task.Run(Test4Async);
Debug.Log("OnButtonClick4-1 End");
}
{
Debug.Log("OnButtonClick4-2 Init ");
var cancelTokenSource = new CancellationTokenSource();
var aa = Task.Run(Test4Async);
Debug.Log("OnButtonClick4-2 start");
aa.Wait();
Debug.Log("OnButtonClick4-2 End");
}
Debug.Log("END");
}
async Task<int> Test4Async()
{
Debug.LogFormat("Test4Async Start {0}", Thread.CurrentThread.ManagedThreadId);
test_i++;
for (int i = 0; i < counter; i++)
for (int j = 0; j < counter; j++) ;
await Task.Delay(1);
Debug.LogFormat("Test4Async End {0}", Thread.CurrentThread.ManagedThreadId);
return test_i;
}
ID 1
OnButtonClick4-1 Init
OnButtonClick4-1 End
OnButtonClick4-2 Init
OnButtonClick4-2 start
Test4Async Start 458
Test4Async Start 461
Delay
Delay
Test4Async End 432
Test4Async End 453
OnButtonClick4-2 End
END