title: Queue.Peek throws InvalidOperationException if Queue is Empty
body: <p>I've got a simple Queue to manage items being added to my application.</p>
  
  <p>From Microsoft's current documentation of their <a href="http://msdn.microsoft.com/en-us/library/system.collections.queue.peek(v=vs.100).aspx" rel="noreferrer">Queue.Peek Method</a>:</p>
  
  <p><img src="https://i.stack.imgur.com/JaTGl.jpg" alt="screenshot"></p>
  
  <h2>What is the point of using Peek() to look at the Queue if it still throws an Invalid Operation Exception?</h2>
  
  <p>I thought the whole point of Peek() was to have code that did NOT generate exceptions.</p>