[开源]快速加载器-FastLoader

王朝other·作者佚名  2008-05-19
窄屏简体版  字體: |||超大  

继 SafeLoader(安全加载器) 继续开源.

以下是以速度第一为准则的载入策略,仍然具有简单的纠错机制。

FastLoader.as 源代码:

/*

*作者姚伟。闪吧ID:hust。

*你可以修改和使用此代码。但请著名原作者,谢谢。

*2006.2.12

*快速但冒险的并发载入模式--FastLoader(快速加载器)

*/

classloaders.FastLoader

{

privatestaticvartaskArr:Array=newArray();

privatestaticvarmclArr:Array=newArray();

privatestaticvarlistArr:Array=newArray();

publicstaticvarwaitNum:Number=0;

publicstaticvarloadedNum:Number=0;

publicstaticvarloadingNum:Number=0;

publicstaticvartotalNum:Number=0;

//privatevarloader

//privatestaticvarLoadID:Number;

publicstaticfunctionaddTask(url:String,target_mc:MovieClip)

{

trace("addTask");

taskArr.push([url,target_mc]);

totalNum++;

waitNum++;

}

privatestaticfunctionpreLoad()

{

for(vari=0;i<taskArr.length;i++)

{

trace("i="+i);

listArr[i]=newObject();

listArr[i].onLoadStart=function()

{

waitNum--;

loadingNum++;

}

listArr[i].onLoadProgress=function()

{

}

listArr[i].onLoadComplete=function()

{

}

listArr[i].onLoadInit=function()

{

loadingNum--;

loadedNum++;

//success,next

trace("onLoadInit");

trace("i="+i);

}

listArr[i].onLoadError=function()

{

mclArr[i].loadClip(taskArr[i][0],taskArr[i][1]);

}

}

for(vari=0;i<taskArr.length;i++)

{

mclArr[i]=newMovieClipLoader();

mclArr[i].addListener(listArr[i]);

}

}

publicstaticfunctionstartLoad()

{

preLoad();

//mclArr[0].loadClip(taskArr[0][0],taskArr[0][1]);

for(vari=0;i<taskArr.length;i++)

{

mclArr[i].loadClip(taskArr[i][0],taskArr[i][1]);

}

}

}

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航