private void FilterInfos() { // 回收引用 ReferencePool.Release(_cacheInfos); _cacheInfos.Clear(); var fileLoaders = AssetSystem.GetAllLoaders(); _loaderTotalCount = fileLoaders.Count; foreach (var loader in fileLoaders) { // 只搜索关键字 if (string.IsNullOrEmpty(_filterKey) == false) { if (loader.BundleInfo.BundleName.Contains(_filterKey) == false) { continue; } } LoaderWrapper loaderWrapper = ReferencePool.Spawn <LoaderWrapper>(); loaderWrapper.BundleName = loader.BundleInfo.BundleName; loaderWrapper.Loader = loader; // 添加到显示列表 _cacheInfos.Add(loaderWrapper); } // 重新排序 _cacheInfos.Sort(); }
/// <summary> /// 延迟广播事件 /// </summary> public void PostMessage(int eventId, IEventMessage message) { var wrapper = ReferencePool.Spawn <PostWrapper>(); wrapper.PostFrame = UnityEngine.Time.frameCount; wrapper.EventID = eventId; wrapper.Message = message; _postWrappers.Add(wrapper); }
private void HandleUnityEngineLog(string logString, string stackTrace, LogType type) { LogWrapper wrapper = ReferencePool.Spawn <LogWrapper>(); wrapper.Type = type; _totalCount++; if (type == LogType.Assert || type == LogType.Error || type == LogType.Exception) { wrapper.Log = $"[{_totalCount}] " + logString + "\n" + stackTrace; } else { wrapper.Log = $"[{_totalCount}] " + logString; } if (type == LogType.Log) { _logCount++; } else if (type == LogType.Warning) { _warningCount++; } else if (type == LogType.Assert || type == LogType.Error || type == LogType.Exception) { _errorCount++; } else { throw new NotImplementedException(type.ToString()); } _logs.Add(wrapper); if (_logs.Count > LOG_MAX_COUNT) { ReferencePool.Release(_logs[0]); _logs.RemoveAt(0); } }
private void FilterInfos() { // 回收引用 ReferencePool.Release(_cacheInfos); // 清空列表 _cacheInfos.Clear(); // 绘制显示列表 var fileLoaders = AssetSystem.GetAllLoaders(); _loaderTotalCount = fileLoaders.Count; foreach (var loader in fileLoaders) { // 只搜索关键字 if (string.IsNullOrEmpty(_filterKey) == false) { if (loader.LoadPath.Contains(_filterKey) == false) { continue; } } string info = Substring(loader.LoadPath, "/assets/"); info = info.Replace(".unity3d", string.Empty); info = $"{info} = {loader.RefCount}"; InfoWrapper element = ReferencePool.Spawn <InfoWrapper>(); element.Info = info; element.LoadState = loader.States; element.ProviderFailedCount = loader.GetFailedProviderCount(); // 添加到显示列表 _cacheInfos.Add(element); } // 重新排序 _cacheInfos.Sort(); }
private void HandleUnityEngineLog(string logString, string stackTrace, LogType type) { LogWrapper wrapper = ReferencePool.Spawn <LogWrapper>(); wrapper.Type = type; if (type == LogType.Assert || type == LogType.Error || type == LogType.Exception) { wrapper.Log = logString + "\n" + stackTrace; } else { wrapper.Log = logString; } _logs.Add(wrapper); if (_logs.Count > LOG_MAX_COUNT) { ReferencePool.Release(_logs[0]); _logs.RemoveAt(0); } }
private void FilterInfos() { // 回收引用 ReferencePool.Release(_cacheInfos); // 清空列表 _cacheInfos.Clear(); // 绘制显示列表 var fileLoaders = AssetSystem.GetAllLoaders(); _loaderTotalCount = fileLoaders.Count; foreach (var loader in fileLoaders) { // 只搜索关键字 if (string.IsNullOrEmpty(_filterKey) == false) { if (loader.BundleInfo.ManifestPath.Contains(_filterKey) == false) { continue; } } string info = $"资源名称:{loader.BundleInfo.ManifestPath} 资源版本:{loader.BundleInfo.Version} 引用计数:{loader.RefCount}"; InfoWrapper element = ReferencePool.Spawn <InfoWrapper>(); element.Info = info; element.LoadState = loader.States; element.ProviderFailedCount = loader.GetFailedProviderCount(); // 添加到显示列表 _cacheInfos.Add(element); } // 重新排序 _cacheInfos.Sort(); }