gpt4 book ai didi

c# - 如何在控制台应用程序中成功运行 Hangfire MemoryStorage 作业?

转载 作者:行者123 更新时间:2023-11-30 21:40:45 27 4
gpt4 key购买 nike

我正在努力使用 MemoryStorage 在简单的 C# 控制台应用程序上启动 Hangfire 作业。我想尝试使用 Hangfire 做一些事情,但我就是不知道如何配置它。

这是我的代码:

    private static void Main(string[] args)
{
GlobalConfiguration.Configuration.UseMemoryStorage();

Hangfire.BackgroundJob.Enqueue(() => Console.WriteLine("fire!"));
Hangfire.RecurringJob.AddOrUpdate(() => Console.WriteLine("minute!"), Cron.Minutely);

Console.ReadKey();
}

我没有收到任何这些消息。

我也尝试使用 JobStorage.Current = new MemoryStorage(new MemoryStorageOptions());,但它没有改变任何东西。

最佳答案

如果使用内存存储,您必须将 Hangfire 服务器(即工作线程池)添加到声明存储的同一进程(存储只是一个 ConcurrentDictionary 实例)。

在控制台应用程序中它可能看起来像:

static void Main(string[] args)
{
GlobalConfiguration.Configuration.UseMemoryStorage();

BackgroundJob.Enqueue(() => Console.WriteLine("Easy!"));

using (new BackgroundJobServer())
{
Console.WriteLine("Hangfire Server started. Press ENTER to exit...");
Console.ReadLine();
}
}

关于c# - 如何在控制台应用程序中成功运行 Hangfire MemoryStorage 作业?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44313970/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com