using System.Threading; using System.Threading.Tasks; using VNLib.Utils.Logging; namespace VNLib.Plugins.Extensions.Loading.Events { /// /// Exposes a type for asynchronous event schelueling /// public interface IIntervalScheduleable { /// /// A method that is called when the interval time has elapsed /// /// The plugin default log provider /// A token that may cancel an operations if the plugin becomes unloaded /// A task that resolves when the async operation completes Task OnIntervalAsync(ILogProvider log, CancellationToken cancellationToken); } }