|
|
|
@ -4,6 +4,7 @@ using System.Threading; |
|
|
|
using System.Threading.Tasks; |
|
|
|
using Volo.Abp.DependencyInjection; |
|
|
|
using Volo.Abp.MultiTenancy; |
|
|
|
using Volo.Abp.Threading; |
|
|
|
|
|
|
|
namespace Volo.Abp.BackgroundJobs; |
|
|
|
|
|
|
|
@ -14,17 +15,21 @@ public class MyAsyncJob : AsyncBackgroundJob<MyAsyncJobArgs>, ISingletonDependen |
|
|
|
public Guid? TenantId { get; set; } |
|
|
|
|
|
|
|
private readonly ICurrentTenant _currentTenant; |
|
|
|
private readonly ICancellationTokenProvider _cancellationTokenProvider; |
|
|
|
|
|
|
|
public bool Canceled { get; set; } |
|
|
|
|
|
|
|
public MyAsyncJob(ICurrentTenant currentTenant) |
|
|
|
public MyAsyncJob( |
|
|
|
ICurrentTenant currentTenant, |
|
|
|
ICancellationTokenProvider cancellationTokenProvider) |
|
|
|
{ |
|
|
|
_currentTenant = currentTenant; |
|
|
|
_cancellationTokenProvider = cancellationTokenProvider; |
|
|
|
} |
|
|
|
|
|
|
|
public override Task ExecuteAsync(MyAsyncJobArgs args, CancellationToken cancellationToken = default) |
|
|
|
public override Task ExecuteAsync(MyAsyncJobArgs args) |
|
|
|
{ |
|
|
|
if (cancellationToken.IsCancellationRequested) |
|
|
|
if (_cancellationTokenProvider.Token.IsCancellationRequested) |
|
|
|
{ |
|
|
|
Canceled = true; |
|
|
|
} |
|
|
|
|