I've been working on this project and I've had to look at a bunch of code, and go through many tutorials. One thing I've consistently noticed is that the programmer checks to make sure the current thread (Thread.currentThread()) is equal to the one they created in the class constructor. Now, that would make since if there was more than one thread, but why what's the point when your only working with one(not counting the "main" thread)?
Hope that's not too confusing.