I am not sure either. Garbage collector is a black box. Also, I have no idea how much overhead does Worker have (when creating). But it's surely negligible compared to data we send and computation we do there :)

So let's keep it simple. I will terminate worker after ```finalize```. Another one will be created next time.