异步操作支持取消令牌

This commit is contained in:
智能大石头 2025-02-25 11:27:04 +08:00
parent 2e786f1250
commit 3760201882
4 changed files with 6 additions and 5 deletions

View File

@ -56,7 +56,7 @@
</ItemGroup>
<ItemGroup>
<PackageReference Include="NewLife.Core" Version="11.4.2025.221-beta0925" />
<PackageReference Include="NewLife.Core" Version="11.4.2025.225-beta0200" />
</ItemGroup>
<ItemGroup>

View File

@ -47,7 +47,8 @@ public class RedisEventBus<TEvent>(FullRedis cache, String topic, String group)
/// <summary>发布消息到消息队列</summary>
/// <param name="event">事件</param>
/// <param name="context">上下文</param>
public override Task<Int32> PublishAsync(TEvent @event, IEventContext<TEvent>? context = null)
/// <param name="cancellationToken">取消令牌</param>
public override Task<Int32> PublishAsync(TEvent @event, IEventContext<TEvent>? context = null, CancellationToken cancellationToken = default)
{
Init();
var rs = _queue.Add(@event);
@ -92,7 +93,7 @@ public class RedisEventBus<TEvent>(FullRedis cache, String topic, String group)
if (msg2 != null)
{
// 发布到事件总线
await base.PublishAsync(msg2, new RedisEventContext<TEvent>(this, msg)).ConfigureAwait(false);
await base.PublishAsync(msg2, new RedisEventContext<TEvent>(this, msg), cancellationToken).ConfigureAwait(false);
}
}
else

View File

@ -16,7 +16,7 @@
</PropertyGroup>
<ItemGroup>
<PackageReference Include="NewLife.Core" Version="11.4.2025.221-beta0925" />
<PackageReference Include="NewLife.Core" Version="11.4.2025.225-beta0200" />
</ItemGroup>
<ItemGroup>

View File

@ -10,7 +10,7 @@
<ItemGroup>
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="9.0.0" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.12.0" />
<PackageReference Include="NewLife.Core" Version="11.4.2025.221-beta0925" />
<PackageReference Include="NewLife.Core" Version="11.4.2025.225-beta0200" />
<PackageReference Include="NewLife.UnitTest" Version="1.0.2025.101" />
<PackageReference Include="xunit" Version="2.9.3" />
<PackageReference Include="xunit.runner.visualstudio" Version="3.0.2">