The methods are not only called on Threads. The purpose of these methods is to provide a way to prevent an Object from being accessed from two different Threads at the same time. These methods allow Threads to have exclusive access to an object for the duration of an operation that should be considered atomic. The reason they are in the Object class is because we must be able to make sure that any Object can be protected from concurrent access.
I’ve looked at a lot of different solutions, and in my humble opinion Aspose is the way to go. Here’s the link: http://aspose.com
subject: Why wait and notify are methods of Object?