If this queue is non‐empty, remove the first item, load that item into the specified buffer, and return 0 indicating success. If this queue is empty, return a non‐zero value with no effect on buffer or the state of this queue. This method never blocks.