title: Is Sleep() evil?
body: <p>First of all, there are many cases where <code>Sleep()</code> is <strong>misused</strong>, for example to "synchronize" threads or to regularily poll a value where a notification function would do (In Win32 <code>WaitForSingleObject</code> for example)</p>
  
  <p>But what about other use cases? <strong>Is <code>Sleep</code> always evil?</strong> If no, what are good use cases for <code>Sleep</code>? If yes, why do almost all languages have some kind of <code>Sleep</code> statement? </p>
  
  <p>PS: I've asked this question because of one of the comments of <a href="https://stackoverflow.com/questions/1096498/delphi-and-hdd-i-o-quoting-resource-pre-caching-read-write-seek-parameter-lim/1096678#1096678">another</a> question. There the OP states, that in his opinion, <code>Sleep</code> is to be avoided like <code>goto</code>.</p>