When the DNN scheduler operates under Timer mode, it uses threads to execute each task. The number of simultaneous tasks that can be executed depends on the configured available threads (default is 1). If the scheduler is busy with many tasks to execute without sufficient threads to handle them, these tasks will be queued up and therefore may not be able to execute the task at the expected time.
If your queue is very long, we recommend that you increase the maximum number of threads to ensure there are sufficient threads to handle the number of tasks. You can change the number of threads by modifying the maxThreads attribute in your web.config settings.
<add name="DNNScheduler" type="DotNetNuke.Services.Scheduling.DNNScheduler, DotNetNuke" providerPath="~\Providers\SchedulingProviders\DNNScheduler\" debug="false" maxThreads="1" />
Please note that having too many threads will consume more resources (CPU and memory). It's a good idea to find a balance to have sufficient threads to run your tasks without wasting resources unnecessarily.