public void OnNext(T element)
 {
     queue.Offer(element);
     Unblock();
 }
 internal void OnNext(T item)
 {
     queue.Offer(item);
     Schedule();
 }