public bool Poll(out V item) { if (queue.Poll(out item)) { parent.RequestInner(1); return(true); } return(false); }
public bool Poll(out R item) { if (queue.Poll(out item)) { var lim = limit; if (++consumed == lim) { consumed = 0; upstream.Request(lim); } return(true); } return(false); }
public bool Poll(out T item) { bool b = queue.Poll(out item); if (b && sourceMode != FusionSupport.SYNC) { int c = consumed + 1; if (c == limit) { consumed = 0; upstream.Request(limit); } else { consumed = c; } } return(b); }
public bool Poll(out T item) { return(queue.Poll(out item)); }