代码拉取完成,页面将自动刷新
4.9.1.55 (最新)
.NET8
Mvc
Windows 10
测试环境 (单元测试/集成测试)
SqlServer 2012+
IIS
文档例子代码复现。
我想着是,执行队列延迟3秒,第一次能立刻执行,后面在延迟3秒执行。
能否可以增加一个开关来设置延迟队列第一次是否立即执行。
实际发生是,延迟3秒后才会执行。
没有截图。
暂无。
已实现:https://gitee.com/dotnetchina/Furion/commit/cf4bd5ac7bab4a25323f1b1ab5b8054810eb7391,下个版本(今天发布)
添加了一个 runOnceIfDelaySet
参数,设置为 true
,将立即执行一次。
/// <summary>
/// 同步入队,延迟 3 秒触发,并立即执行一次
/// </summary>
public void SyncTask3()
{
_taskQueue.Enqueue(provider =>
{
Console.WriteLine("我是同步的,但我延迟了 3 秒");
+ }, 3000, runOnceIfDelaySet: true); // 虽然延迟了,但是会先立即执行一次
}
/// <summary>
/// 异步入队,延迟 3 秒触发,并立即执行一次
/// </summary>
public async Task AsyncTask3()
{
await _taskQueue.EnqueueAsync(async (_, _) =>
{
Console.WriteLine("我是异步的,但我延迟了 3 秒");
await ValueTask.CompletedTask;
+ }, 3000, runOnceIfDelaySet: true); // 虽然延迟了,但是会先立即执行一次
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。
登录 后才可以发表评论