From 41b0dce8529b343f5673d7e69c12a005d351a812 Mon Sep 17 00:00:00 2001 From: Argo-Lenovo Date: Sat, 29 Jan 2022 16:03:57 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E4=BB=BB=E5=8A=A1=E6=97=A5=E5=BF=97?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=9C=80=E5=A4=A7=E6=95=B0=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Components/TaskInfo.razor.cs | 29 +++++++++++++++++-- .../Pages/Admin/Tasks.razor.cs | 2 +- 2 files changed, 28 insertions(+), 3 deletions(-) diff --git a/src/blazor/admin/BootstrapAdmin.Web/Components/TaskInfo.razor.cs b/src/blazor/admin/BootstrapAdmin.Web/Components/TaskInfo.razor.cs index 15f4ec85..c1bcbc97 100644 --- a/src/blazor/admin/BootstrapAdmin.Web/Components/TaskInfo.razor.cs +++ b/src/blazor/admin/BootstrapAdmin.Web/Components/TaskInfo.razor.cs @@ -10,7 +10,7 @@ namespace BootstrapAdmin.Web.Components; /// /// /// -public partial class TaskInfo +public partial class TaskInfo : IDisposable { /// /// @@ -20,7 +20,7 @@ public partial class TaskInfo [EditorRequired] public TasksModel? Model { get; set; } - private List Messages { get; } = new(); + private List Messages { get; } = new(24); /// /// @@ -47,6 +47,31 @@ public partial class TaskInfo { Message = message }); + if (Messages.Count > 20) + { + Messages.RemoveAt(0); + } await InvokeAsync(StateHasChanged); } + + private void Dispose(bool disposing) + { + if (disposing) + { + var sche = TaskServicesManager.Get(Model.Name); + if (sche != null) + { + sche.Triggers.First().PulseCallback = null; + } + } + } + + /// + /// + /// + public void Dispose() + { + Dispose(true); + GC.SuppressFinalize(this); + } } diff --git a/src/blazor/admin/BootstrapAdmin.Web/Pages/Admin/Tasks.razor.cs b/src/blazor/admin/BootstrapAdmin.Web/Pages/Admin/Tasks.razor.cs index 11eab069..1221fadc 100644 --- a/src/blazor/admin/BootstrapAdmin.Web/Pages/Admin/Tasks.razor.cs +++ b/src/blazor/admin/BootstrapAdmin.Web/Pages/Admin/Tasks.razor.cs @@ -167,7 +167,7 @@ public partial class Tasks var option = new DialogOption() { Class = "task-info", - Title = $"{model.Name} - 日志窗口(最新50条)", + Title = $"{model.Name} - 日志窗口(最新 20 条)", Component = BootstrapDynamicComponent.CreateComponent(new Dictionary { [nameof(TaskInfo.Model)] = model