LeakyBucketStreamThrottler implements close and inside it it shutdowns executorService.
However, ListenHTTP and PostHTTP doesn't call close, and since those processors create new LeakyBucketStreamThrottler instance when it is scheduled, it creates new thread without closing the old ones.
It can be reproduced by repeating stop and start those processors again and again. You can confirm the number of threads are increasing by following command:
or using thread dump