HangfireIO / HangfireIO/Hangfire
Enqueue a delayed task / continuation on a specific queue
- 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
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