title: Is wait set a part of the monitor or are they two separate things?
body: <p>So i'm trying to understand monitors in java and I came across two new concepts which are object headers and the wait-set.</p>
  
  <p>My question is does the concept of the monitor correspond to a explicit implementation like in terms of code, which is in itself separate from wait set or any other synchronization feature for that matter. </p>
  
  <p>Or is it a concept that encompasses or includes different features such as the wait set feature and locks? so basically what I'm asking is, is the monitor simply a name given to a group of features that control thread access and behavior?</p>