pub fn recvmmsg<'a, I, S>(
    fd: RawFd,
    data: impl IntoIterator<Item = &'a mut RecvMmsgData<'a, I>, IntoIter = impl ExactSizeIterator + Iterator<Item = &'a mut RecvMmsgData<'a, I>>>,
    flags: MsgFlags,
    timeout: Option<TimeSpec>
) -> Result<Vec<RecvMsg<'a, S>>>where
    I: AsRef<[IoSliceMut<'a>]> + 'a,
    S: Copy + SockaddrLike + 'a,Expand description
An extension of recvmsg that allows the caller to receive multiple
messages from a socket using a single system call. This has
performance benefits for some applications.
iov and cmsg_buffer should be constructed similarly to recvmsg
Multiple allocations are performed
Arguments
fd: Socket file descriptordata: Struct that implementsIntoIteratorwithRecvMmsgDataitemsflags: Optional flags passed directly to the operating system.
RecvMmsgData
iov: Scatter-gather list of buffers to receive the messagecmsg_buffer: Space to receive ancillary data. Should be created bycmsg_space!
Returns
A Vec with multiple RecvMsg, one per received message