//! Strategy for blocking synchronously on the ring for results.
use Duration;
use crateCompletionEvent;
use crateResult;
use crate::;
/// Waits for completions using a blocking call.
///
/// ```no_run
/// use wireshift::{Ring, RingConfig, strategy::BlockingDrain};
///
/// let ring = Ring::new(RingConfig::default())?;
/// let drain = BlockingDrain::new(ring);
/// let _ = drain.wait(None);
/// # Ok::<(), Box<dyn std::error::Error>>(())
/// ```