У меня проблемы с созданием непрерывного таймера. На таймерах создаются многополюсные потоки, расположенные в шахматном порядке, которые будут работать в течение некоторого времени, а затем полностью остановятся. Максимальное количество потоков, которые я разрешаю, равно 5, а интервал таймера установлен на 10000. Таким образом, теоретически будет выполняться 1 поток каждые 2 секунды.
Это происходит какое-то время, но потом это останавливается. в настоящее время я тестирую консольное приложение и пишу ответы на него.
Я не совсем уверен, что здесь происходит
internal class EngineThreadGenerator
{
private readonly AutoResetEvent _autoEvent;
private readonly Action<string, string> _processQueueDelegate;
private readonly Action<string, string> _purgeQueueDelegate;
private void createAllowedEmailThreads()
{
for (int counter = 0; counter < AppSettings.ProcessQueueAllowedThreads; counter++)
{
EmailThread _emailThread = new EmailThread(_collection, _processQueueDelegate, _purgeQueueDelegate);
TimerCallback _timerCallback = _emailThread.InitEmailThread;
Timer _stateTimer = new Timer(_timerCallback, _autoEvent, 0, AppSettings.ProcessIntervalInMilliseconds);
pauseLoop();
}
}
Любая помощь здесь приветствуется! Ура!