From 4a90819ba6d69eb231b1b30fb56c6c6ec8d3619c Mon Sep 17 00:00:00 2001 From: Mathieu Lacage Date: Thu, 3 May 2007 00:12:39 +0200 Subject: [PATCH] port sample code to refcounting model --- samples/main-simple.cc | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/samples/main-simple.cc b/samples/main-simple.cc index a7927b59c..2bc4ae429 100644 --- a/samples/main-simple.cc +++ b/samples/main-simple.cc @@ -17,6 +17,10 @@ GenerateTraffic (Socket *socket, uint32_t size) { Simulator::Schedule (Seconds (0.5), &GenerateTraffic, socket, size - 50); } + else + { + socket->Close (); + } } static void @@ -35,12 +39,17 @@ int main (int argc, char *argv[]) { InternetNode *a = new InternetNode (); - Socket *sink = a->GetUdp ()->CreateSocket (); + Udp *udp; + udp = a->GetUdp (); + + Socket *sink = udp->CreateSocket (); sink->Bind (80); - Socket *source = a->GetUdp ()->CreateSocket (); + Socket *source = udp->CreateSocket (); source->Connect (Ipv4Address::GetLoopback (), 80); + udp->Unref (); + GenerateTraffic (source, 500); PrintTraffic (sink); @@ -49,10 +58,9 @@ int main (int argc, char *argv[]) Simulator::Destroy (); - - delete a; - delete source; - delete sink; + sink->Unref (); + source->Unref (); + a->Unref (); return 0; }