[SPARK-3562]Periodic cleanup event logs

link #2391 
I think there is a need for the two tasks to never run concurrently. if the order is: 
1. check task get applications 
2. clean task get applications
3. clean task get result, and replace applications
4. check task get result, and replace applications
then clean task result is covered by check result.
use a ScheduledExecutorService with a single worker thread is a good way to solve it.