Hangfire EnqueuedJobs 参数

标签 hangfire

我正在尝试使用以下代码检索 Hangfire 中排队的作业:

IMonitoringApi monitor = JobStorage.Current.GetMonitoringApi();

var jobData = monitor.EnqueuedJobs(?, 0, 1);

api表示第一个参数是一个字符串(字符串队列)。我的问题是,该字符串队列表示什么以及如何获得它?谢谢

最佳答案

它是您放置作业的队列的名称,您可以在 Hangfire 中创建尽可能多的队列。

var options = new BackgroundJobServerOptions
{
    Queues = new[] { "critical", "default" }
};

app.UseHangfireServer(options);

这里有两个队列,一个是关键队列,第二个是默认队列

因此,如果您没有创建任何队列,则这里将传递默认值,因为默认队列就是默认队列。

将函数实现为

public JobList<EnqueuedJobDto> EnqueuedJobs(string queue, int @from, int perPage)
        {
            return UseConnection(connection =>
            {
                var queueApi = GetQueueApi(connection, queue);
                var enqueuedJobIds = queueApi.GetEnqueuedJobIds(queue, from, perPage);

                return EnqueuedJobs(connection, enqueuedJobIds);
            });
        }

此处实现链接 https://searchcode.com/codesearch/raw/97584324/

如果你完成了,请告诉我。

关于Hangfire EnqueuedJobs 参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41133130/

相关文章:

asp.net - IIS 6.1 - 始终使用 Hangfire 运行网站以进行后台作业

c# - Hangfire 具有水平缩放功能

c# - Hangfire:该类型不包含带有签名的方法

c# - Hangfire 作业导致整个应用程序崩溃;我们如何让 Hangfire 来处理错误?

asp.net - Hangfire.io 仪表板映射到 IIS 虚拟目录

c# - 在 WebApi 中使用 Autofac 进行 Hangfire

c# - 从 Hangfire 作业中获取 UserManager

mysql - Hangfire MySqlStorage - HttpConfiguration 不包含 'UseStorage' 的定义

Hangfire - 无法安排重复作业,详情请参阅内部异常