In sporadic situations, the Runner may seem stuck after pulling a new task for execution.
In this situation, the execution is not started, and the Runner status remains as Executing task ... until the Runner is restarted.
Overall, the resources used by the previous execution, which have not been correctly finalized, can cause this type of problem. Thus, when the code attempts to reaccess these resources, a conflict occurs because the operating system considers these resources already "in use."
A classic example is the use of web drivers in web automation. Without proper finishing, the web driver may continue to run even after the process is completed, affecting the following executions.
A possible solution to this type of problem is to include treatments in the code to ensure that all resources allocated and used by the robot are finished correctly at the end of execution, even in cases where exceptions occur.
Following this good practice, every time the Runner performs this process, the environment will be "clean"; therefore, there will be no problems using specific resources.
Tip:
You can also always consult the log.txt file generated by the Runner to verify any exceptions during the environment preparation and process execution.