public static List<byte[]> ReceiveMessages([NotNull] this IReceivingSocket socket, int expectedFrameCount = 4) { var frames = new List<byte[]>(capacity: expectedFrameCount); bool hasMore = true; while (hasMore) frames.Add(socket.Receive(false, out hasMore)); return frames; }