Change receiveIsReady and processEvents to return immediately, with comment warnings that the caller needs to sleep to avoid using 100% CPU.
diff --git a/ndn-cpp/transport/tcp-transport.hpp b/ndn-cpp/transport/tcp-transport.hpp
index 57d9554..f3c5e91 100644
--- a/ndn-cpp/transport/tcp-transport.hpp
+++ b/ndn-cpp/transport/tcp-transport.hpp
@@ -36,8 +36,8 @@
/**
* Process any data to receive. For each element received, call face.onReceivedElement.
- * This is non-blocking and will silently time out after a brief period if there is no data to receive.
- * You should repeatedly call this from an event loop.
+ * This is non-blocking and will return immediately if there is no data to receive.
+ * You should normally not call this directly since it is called by Face.processEvents.
* @throw This may throw an exception for reading data or in the callback for processing the data. If you
* call this from an main event loop, you may want to catch and log/disregard all exceptions.
*/
diff --git a/ndn-cpp/transport/udp-transport.hpp b/ndn-cpp/transport/udp-transport.hpp
index 17f6e25..4ea6324 100644
--- a/ndn-cpp/transport/udp-transport.hpp
+++ b/ndn-cpp/transport/udp-transport.hpp
@@ -36,8 +36,8 @@
/**
* Process any data to receive. For each element received, call face.onReceivedElement.
- * This is non-blocking and will silently time out after a brief period if there is no data to receive.
- * You should repeatedly call this from an event loop.
+ * This is non-blocking and will return immediately if there is no data to receive.
+ * You should normally not call this directly since it is called by Face.processEvents.
* @throw This may throw an exception for reading data or in the callback for processing the data. If you
* call this from an main event loop, you may want to catch and log/disregard all exceptions.
*/