Description
There should be a single checking thread that will periodically check to see if there are sessions that passed their inactivity time.
Right now this is done for every session with Timer.schedule that creates a thread for every session, which is not scalable (the number of threads increases linearly with the number of concurrent sessions).