Hi!

The timer method is probably not executed because the finish-method gets 
scheduled first. Both methods should execute at 50s, but for some reason 
"finish" ends up ahead in the scheduler. My suggestion is to set the 
finish-time at 50.1s. 

Good luck!

Mats Folke

El hadi Cherkaoui wrote:
> hi all,
> 
> i want ot creat a timer on tcl
> 
> set ns [new Simulator]
> set bw bw2.dat
> set f [open $bw w]
> 
> proc timer {} {
> 
>   global ns f
>   set time 10
>   set now [$ns now]
> 
>   set cost [expr floor( rand() * 40) + 20]   ;# exemple
>   puts $f "$now : $cost"
>   $ns at [expr $now+$time] "timer"
> 
> 
> }
> 
> proc finish {} {
>     puts "Stop simulation"
>         global ns f
>         $ns flush-trace
>         close $f
>     exit 0
> }
> 
> $ns at 0.0 "timer"
> $ns at 50  "finish"
> $ns run
> 
> 
> i have 5 values every 10s but the simulation doesn't take 50 s why ?



-- 
Mats Folke, M.Sc., Lic.Eng.
Research Engineer

Ericsson AB                     Office: +46 10 7171385
Ericsson Research               Fax: +46 920 99621
P.O. Box 920                    Mobile: +46 76 1271385
SE-971 28 Luleå
Sweden

Reply via email to