Ответы с форумов MSDN

Фоновые потоки в Hangfire

Date: 16.11.2016 5:51:53

Насколько я понял, он сохраняет задачи в определенном хранилище (например, SQL Server) а выполняются они в том же процессе, что и приложение, в фоновых потоках. Работа этой библиотеки не привязана к определенной технологии, не важно ASP.NET или обычное приложение.

Message 1081

Date: 18.11.2016 5:05:13

Из документации (http://docs.hangfire.io/en/latest/background-methods/calling-methods-in-background.html):

*******

"The Enqueue method ... it runs the following steps:

  1. Serialize a method information and all its arguments.
  2. Create a new background job based on the serialized information.
  3. Save background job to a persistent storage.
  4. Enqueue background job to its queue.

...

Another Hangfire component, called Hangfire Server, checks the persistent storage for enqueued background jobs and performs them in a reliable way.

Enqueued jobs are handled by a dedicated pool of worker threads."

http://docs.hangfire.io/en/latest/index.html

"Background jobs are processed by Hangfire Server. It is implemented as a set of dedicated (not thread pool’s) background threads that fetch jobs from a storage and process them."

*******

Насколько я понял, используются обычные фоновые потоки (System.Threading.Thread). 

Серьезные компоненты обычно так и пишутся, поскольку работа с классами "приближенными к стандартному API" дает больший контроль чем с классами более "высокого уровня" (например, ThreadPool).


Автор: VadimTagil

Главная страница - Список тем - Репозиторий на GitHub