public SingleTask(IEnumerator enumerator) { if (enumerator is SingleTask || enumerator is PausableTask || enumerator is AsyncTask) throw new ArgumentException("Use of incompatible Enumerator, cannot be SingleTask/PausableTask/AsyncTask"); _task = new SerialTaskCollection(); _task.Add(enumerator); _enumerator = _task.GetEnumerator(); onComplete = null; }
public SingleTask(IEnumerator enumerator) { if (enumerator is TaskCollection || enumerator is SingleTask) _enumerator = enumerator; else { _task = new SerialTaskCollection(); _task.Add(enumerator); _enumerator = _task.GetEnumerator(); } _onComplete = null; }
// Use this for initialization void Start () { SerialTaskCollection st = new SerialTaskCollection(); st.Add(Print(1)); st.Add(Print(2)); st.Add(DoSomethingAsynchonously(1)); st.Add(Print(4)); st.Add(DoSomethingAsynchonously(5)); st.Add(Print(5)); st.Add(WWWTest ()); st.Add(Print(6)); st.Add(Print(7)); StartCoroutine(st.GetEnumerator()); }