Memory optimization (removing scheduled events instead of just cancelling them)
diff --git a/apps/ndn-consumer.cc b/apps/ndn-consumer.cc
index 2c13925..98febd7 100644
--- a/apps/ndn-consumer.cc
+++ b/apps/ndn-consumer.cc
@@ -114,7 +114,10 @@
 {
   m_retxTimer = retxTimer;
   if (m_retxEvent.IsRunning ())
-    m_retxEvent.Cancel (); // cancel any scheduled cleanup events
+    {
+      // m_retxEvent.Cancel (); // cancel any scheduled cleanup events
+      Simulator::Remove (m_retxEvent); // slower, but better for memory
+    }
 
   // schedule even with new timeout
   m_retxEvent = Simulator::Schedule (m_retxTimer,