title: Setup reader, decoder and consumer threads
body: <p>I have a rather standard producer and consumer threads:</p>
  
  <ul>
  <li>producer reads and decodes bytes from a file to a blocking queue.</li>
  <li>consumer is polling items from the queue</li>
  </ul>
  
  <p>Happenes that decoding process is a bottle neck and would probably benefit from having more CPU. It is 70% of producer time. Would I gain any noticable performance if I introduce "decoder" thread?</p>
  
  <ul>
  <li>producer reads bytes from a file to a blocking "object" queue</li>
  <li>decoder decodes byte objects to items</li>
  <li>consumer is polling "decoded" items</li>
  </ul>
  
  <p>I need to use one queue due to memory foot print - can't afford having two queues (bytes/items), so I guess object "casting" overhead will be present?</p>
  
  <p>Any idea on how to implement this 3 threaded solution?</p>
  
  <p>Thank you!</p>