Unity3D基础论-WWW-协程

Unity3D基础论-WWW-协程_第1张图片
www

程序 进程:

主线程 操作Unity相关的对象、组件。。。线程

协程:

概念:伴随着主线程一起运行的一段程序。

注意:协程与协程之间是并行执行,与主线程也是并行执行。

创建协程方法:关键字IEnumerator,返回 Yield Return:1、返回对象(有构造的执行构造)2、等待下一帧继续执行

开启协程:StartCoroutine(执行方法)、StartCoroutine(方法名称)、StartCoroutine(方法名称,参数);

停止协程 StopCoroutine(方法名称)、只能停止用传参字符串串开启的协程、StartCoroutine(方法名称)

WWW

创建下载对象 WWW data = new WWW(下载地址);

等待下载(①Yield return data)、(②While(!data.isDone){yield return 0;})

获取下载资源

文本data.text、图片data.texture、视频data.movie ogg、字节流data.bytes、声音data.audioClip

注意:下载方法必须是协程方法

拓拓展:本地加载资源方式资源必须要放置到Assets/Resources文件夹中加载方法 Resource.Load();

using System.Threading;      //线程命名空间

进程拥有自己独立的堆和栈,既不共享堆,亦不共享栈,进程由操作系统调度。

线程拥有自己独立的栈和共享的堆,共享堆,不共享栈,线程亦由操作系统调度(标准线程是的)。

协程和线程一样共享堆,不共享栈,协程由程序员在协程的代码里显示调度。

进程和其他两个的区别还是很明显的。

协程和线程的区别是:协程避免了无意义的调度,由此可以提高性能,但也因此,程序员必须自己承担调度的责任,同时,协程也失去了标准线程使用多CPU的能力。

线程:

Thread:创建并控制线程

ThreadStart:创建子线程

Thread thread = new Thread(new ThreadStart(threadTest));

thread.Start();开始

协程:

IEnumerator :所有协程方法必须用这个返回值类型

yield return要返回的值  ;

yield return new WaitForSeconds(3);

协同程序的返回值延迟等待时间3秒

Unity3D基础论-WWW-协程_第2张图片
协程

StartCoroutine(corTest());开始协程程序

StartCoroutine ("corTest");同上

StopCoroutine ();停止协程程序

StopAllCoroutines ();停止全部协程程序

WWW:

www.text获取数据

Unity3D基础论-WWW-协程_第3张图片
www

texture:贴图

Unity3D基础论-WWW-协程_第4张图片
图形

SetActive:

Unity3D基础论-WWW-协程_第5张图片
SetActive

END

你可能感兴趣的:(Unity3D基础论-WWW-协程)