By default, the Agent is assigned 1000 number of initiators to the 'Default' initiator class;
When the scheduler (for example, the DE Server) submits a job to the Agent, latter assigns an initiator from the initiators pool to the running job, and returns that initiator back to the pool upon the job completion.
If the Agent's initiators were all used, the Agent continues to receive the jobs from the scheduler server but stacks them into the FIFO queue; for each of these queued jobs the Agent updates the scheduler with the "Waiting for Initiator" job's status; the scheduler in turn shows the job's with the EXEC state and the "Waiting for initiator" message in the job's detail.
Scheduler server needs not send the job to the agent again.
When the Agent has got an initiator freed, it assigns one to the first out job and submits it to execution.
You can customize the number of initiators in the agentparm.txt file using following format:
initiators.class_n=<job class>,<number of initiators>
For example, you can assign 500 initiators for the File Trigger jobs so that it would not contend for the initiators with other job types:
NB. As always, you need restart the Agent for the changes to take an effect.
Increase the initiator(s) in agentparm.txt file and bounce the agent.