Interesting. I got it working by moving `newSeq(threads, 4)` into `cycle()`. I 
guess once a thread has finished running, simply releasing the `Thread[]` 
object to GC is the way to destroy it. They are apparently not re-usable.

I haven't been able to cause fragmentation after thread destruction, which is 
good. But I don't yet know the performance penalty of continually creating new 
threads, and whether it's justified by the savings in reduced fragmentation...

Reply via email to