There are a multitude of ways you can handle it. You can set the 'freeOnTerminate' property and then just terminate it... it will free it up itself. You can do what I've done... you can do what you've done (I think... the reason I say I think, is because I'm not sure how free handles suspended threads - whether it resumes them or not)

I think its very much a personal preference... though having said that, I use different methods for different situations, so just tinker... you'll find a solution thats right for you and the situation you are using the threads in.