1. 程式人生 > >物件池原理簡要描述

物件池原理簡要描述

物件池原理簡要描述

@author ixenos

 

 

物件池的基本理念是建立時遮蔽獲取細節,物件在當前生命週期終結時入池

 

1)建立時:

var objA = Pool.getItemByCreateFun("SYMBOL_A", createFun); //直接建立或從池中獲取

其中,Pool內部維護了一個字典,getItem時即是在字典中查詢物件,若物件不存在,就在createFun進行建立;

注意,此時新建立的物件並不會直接入池!!而是直接返還給呼叫者

 

2)銷燬時:

Pool.recover("SYMBOL_A", objA);//入池

objA.removeSelf;//從父節點移除

objA = null;//業務程式碼(若宿主物件也要重複利用的話)

當物件在當前環境生命週期結束時,物件池對其進行回收;

下面的處理是保證宿主環境的乾淨;