title: Queue Full, On depth of the Blocking Queue, clarification needed
body: <p>When populating the queue from the contents of the file, depth does not seem to ever increase, as elements are not added in this implementation.</p>
  
  <pre><code>    BlockingQueue&lt;String&gt; q = new SynchronousQueue&lt;String&gt;();
              ...
          fstream = new FileInputStream("/path/to/file.txt");
              ...
          while ((line = br.readLine()) != null) {
              if (q.offer(line))
                  System.out.println("Depth: " + q.size()); //0
          }
  </code></pre>
  
  <p>When replacing <code>offer</code> with <code>add</code>, exception if thrown </p>
  
  <pre><code>Exception in thread "main" java.lang.IllegalStateException: Queue full
    ...
  </code></pre>
  
  <p>What am i doing wrong please? Why is the queue full immediately, upon insertion of the first element?</p>