HangfireIO / HangfireIO/Hangfire

Enqueue a delayed task / continuation on a specific queue

Open
#1,845 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
C#
Stars
10.1k
Forks
1.8k
Avg merge
1h 19m
Merged PRs (30d)
1

Description

I am using the following to enqueue a task on a specific queue:

` public static void EnqueueJob(
ApplicationType Type,
System.Linq.Expressions.Expression> Action)
{
var client = new BackgroundJobClient();
var state = new EnqueuedState(string.Format("{0}-cluster", Type.ToString().ToLower()));
client.Create(Action, state);
}`

This works fine, however, I have a situation where I want to execute 4 different tasks in sequence on different queues. I was thinking that I could either use a delayed job or a continuation, however, the normal BackgroundJob.ContinuiJob with doesn't let you specify a queue and I am not sure how to chain it anyways - and the BackgroundJob.Schedule does not let you specify a queue either.

Contributor guide

Open the contributing guide

Research direction

Start by examining the BackgroundJob.ContinueJob and BackgroundJob.Schedule APIs described in the issue, along with the shown BackgroundJobClient.Create and EnqueuedState usage. Determine how a four-step continuation can target different queues and how delayed execution should behave. Done means the requested sequence can be configured with a specific queue for each task, with coverage for the supported behavior.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
backend
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.