|
发表于 2010-11-20 17:51:40
|
显示全部楼层
根本不存在什么“文件夹”,无论是缓存还是哈希表,都用的是哈希算法寻址。所以才能做到使用量虽然大,但是耗费的时间没有明显增加。
关于传递参数么... 话说一搜索就是一大片来着... 写个简单的给你吧...
[jass]globals
gamecache GC=InitGameCache("gc")
endglobals
function B takes nothing returns nothing
local timer t=GetExpiredTimer()
local integer tmr_hdl=H2I(t)
local integer unit_hdl=GetStoredInteger(GC,I2S(tmr_hdl),"unit")
local unit u=H2U(unit_hdl)
call KillUnit(u)
call DetroyTimer(t)
set t=null
set u=null
endfunction
function A takes unit u returns nothing
local timer t=CreateTimer()
local integer tmr_hdl=H2I(t)
local integer unit_hdl=H2I(u)
call StoreInteger(GC,I2S(tmr_hdl),"unit",unit_hdl)
call TimerStart(t,30,false,function B)
set t=null
set u=null
endfunction[/jass]
//---调用---
call A( GetTriggerUnit() ) //30秒后,这个触发单位会被杀死。 |
|