IEnumerator Start() { CoroutineTask task = new CoroutineTask(DoTask()) .ContinueWith( DoContinueTask(), CoroutineTaskContinuationOptions.OnCompleted | CoroutineTaskContinuationOptions.OnFaulted ).ContinueWith( () => { Debug.Log("The task is completed"); } ); yield return(task.WaitForDone()); Debug.LogFormat("IsDone:{0} IsCompleted:{1} IsFaulted:{2} IsCancelled:{3}", task.IsDone, task.IsCompleted, task.IsFaulted, task.IsCancelled); }