using Microsoft.Extensions.Hosting; using Orleans.Hosting; using System.Threading; using System.Threading.Tasks; namespace Kean.Infrastructure.Orleans { /// /// 后台服务 /// public sealed class HostedService : IHostedService { private readonly ISiloHost _siloHost; /// /// 初始化 Kean.Infrastructure.Orleans.HostedService 类的新实例 /// /// 筒仓服务 internal HostedService(ISiloHost siloHost) => _siloHost = siloHost; /* * 实现 Microsoft.Extensions.Hosting.IHostedService.StartAsync(CancellationToken cancellationToken) 方法 */ public Task StartAsync(CancellationToken cancellationToken) => _siloHost.StartAsync(cancellationToken); /* * 实现 Microsoft.Extensions.Hosting.IHostedService.StopAsync(CancellationToken cancellationToken) 方法 */ public Task StopAsync(CancellationToken cancellationToken) => _siloHost.StopAsync(cancellationToken); } }