public void Dispose() { if (m_LightBind != null) { LightBindEntry.Return(m_Type, m_LightBind); m_LightBind = null; } }
public IBindable Resolve() { if (m_LightBind == null) { m_LightBind = LightBindEntry.Get(m_Type); m_LightBind.Init(m_Target, m_Path); } return(m_LightBind as IBindable); }
public void Return(ILightBind lightBind) { if (m_Pool.Count < m_MaxPoolCount) { if (lightBind.OnReturn()) { m_Pool.Push(lightBind); } } }
public static void Return(string key, ILightBind lightBind) { GetEntry(key).Return(lightBind); }