1# 2# 3# 4# 5 6package require Tclx 7source index.tcl 8 9random seed 10 11set seq 0 12 13proc doputs {command} { 14 global seq 15 16 puts [format "%5d %s" $seq $command] 17 uplevel $command 18 incr seq 19} 20 21proc dostuff {} { 22 for {set i 0} {$i < 1000000} {incr i} { 23 set key [random 10000] 24 set what [random 5] 25 switch $what { 26 0 { 27 set value [random 10000] 28 doputs "m set $key key $key value $value" 29 } 30 31 1 { 32 set value [random 10000] 33 doputs "m set $key key {} value $value" 34 } 35 36 2 { 37 doputs "m set $key key $key value {}" 38 } 39 40 3 { 41 doputs "m delete $key" 42 } 43 44 4 { 45 doputs "m set $key value {}" 46 } 47 } 48 } 49} 50 51proc doit {{argv ""}} { 52 dostuff 53} 54 55if !$tcl_interactive { 56 doit $argv 57} 58