title: What is the difference between busy-wait and polling?
body: <p>From the Wikipedia article on <a href="http://en.wikipedia.org/wiki/Polling_(computer_science)" rel="noreferrer">Polling</a></p>
  <blockquote>
  <p>Polling, or polled operation, in computer science, refers to actively sampling the status of an external device by a client program as a synchronous activity. Polling is most often used in terms of input/output (I/O), and is also referred to as polled I/O or software driven I/O.</p>
  <p>Polling is sometimes used synonymously with busy-wait polling (busy waiting). In this situation, when an I/O operation is required the computer does nothing other than check the status of the I/O device until it is ready, at which point the device is accessed. In other words the computer waits until the device is ready.<br />
  Polling also refers to the situation where a device is repeatedly checked for readiness, and if it is not the computer returns to a different task. Although not as wasteful of CPU cycles as busy-wait, this is generally not as efficient as the alternative to polling, interrupt driven I/O.</p>
  </blockquote>
  <p>So, when a thread doesn't use the &quot;condition variables&quot;, will it be called &quot;polling&quot; for the data change or &quot;busy waiting&quot;?</p>