Files
Yi.Framework/Yi.Furion.Net6/Yi.Framework.Infrastructure/Utils/DisposeAction.cs
2023-04-15 17:35:22 +08:00

28 lines
739 B
C#

using System.Diagnostics.CodeAnalysis;
namespace Yi.Framework.Infrastructure.Utils
{
public class DisposeAction<T> : IDisposable
{
private readonly Action<T> _action;
private readonly T _parameter;
/// <summary>
/// Creates a new <see cref="DisposeAction"/> object.
/// </summary>
/// <param name="action">Action to be executed when this object is disposed.</param>
/// <param name="parameter">The parameter of the action.</param>
public DisposeAction(Action<T> action, T parameter)
{
_action = action;
_parameter = parameter;
}
public void Dispose()
{
_action(_parameter);
}
}
}