Ah, just took a look. I think my suggestion is unlikely to be correct.
Can't try your code now, but have you tried using threadscope? Just a thought, but maybe the garbage collection is blocked waiting for a thread to finish.