/// <summary> /// 等待设置数据 /// </summary> /// <param name="value">设置的数据</param> public WaitSetValue(valueType value) { this.value = value; wait = new AutoCSer.Threading.WaitHandle(); if (value == null) { wait.Set(0); } }
/// <summary> /// 加载成员扩展缓存初始化依赖类型 /// </summary> /// <param name="tableType">表格类型</param> /// <param name="cacheTypes">表格成员扩展缓存初始化依赖类型集合</param> internal static void Load(Type tableType, HashSet <Type> cacheTypes) { MemberCacheWait wait; Monitor.Enter(loadedLock); try { if (loadTypes.TryGetValue(tableType, out wait)) { wait.set(tableType, cacheTypes); } else { loadTypes.Add(tableType, wait = new MemberCacheWait(cacheTypes)); } } finally { Monitor.Exit(loadedLock); } }