public IEnumerator DownloadQueue() { while (dowmLoad.Count > 0) { //出队列 wwwItem tmpItem = dowmLoad.Dequeue(); //开始下载 启动父类一个协程 yield return(tmpItem.Downoload()); } //下载完 ture isDownloadFinish = true; }
/// <summary> /// 下载 /// </summary> /// <param name="tmpItem">下载任务</param> public void AddTarget(wwwItem tmpItem) { //进队列 就下载 dowmLoad.Enqueue(tmpItem); ///如果完成 在启动协程 if (isDownloadFinish) { StartCoroutine(DownloadQueue()); } //进队列 ==false you东西 isDownloadFinish = false; }
/// <summary> /// 下载出错处理 /// 整个类返回给上层 /// </summary> /// <param name="tmpWWW"></param> public virtual void DownloadError(wwwItem tmpItem) { }
/// <summary> /// 继承父类 有重新 /// 出错 加入队列 /// </summary> /// <param name="tmpItem"></param> public override void DownloadError(wwwItem tmpItem) { // base.DownloadError(tmpItem); wwwHelper.Instance.AddTarget(tmpItem); }