@Override
    protected boolean xhas_in ()
    {
        //  We may already have a message pre-fetched.
        if (prefetched)
            return true;

        //  Try to read the next message to the pre-fetch buffer.
        prefetched_msg = xxrecv (ZMQ.ZMQ_DONTWAIT);
        if (prefetched_msg == null && ZError.is(ZError.EAGAIN))
            return false;
        prefetched = true;
        return true;
    }