!7 sclass ManySleepingThreads extends DynPrintLog { int number = 5; transient JTextField tfNumber; transient L threads; JComponent visualize() { ret northAndCenterWithMargins(centerAndEastWithMarginInbetween(withLabel("Number of threads:", tfNumber = jLiveValueTextField(dm_fieldLiveValue('number))), jbutton("Make threads", rThread makeThreads)), super.visualize()); } void makeThreads { temp enter(); interruptThreads(getAndClearList(threads)); if (tfNumber != null) setField(number := parseInt(gtt(tfNumber))); for i to number: { threads.add(startThread("Sleeper", r sleep)); print("Made thread " + (i+1) + "/" + number); } } }