Fork me on GitHub

increasing threads.


I found there're a lot async-thread-macro have a Park states. is it okay? they keep increasing


I use the thread macro is a async block for jdbc operation and use some pipeline-blocking

Alex Miller (Clojure team)13:01:11

What do you mean by an async block?


sounds like the code inside thread is not returning, so the threads are not freed?


@doglooksgood you can use the threads tab to look at the stack traces and see what all those supposedly live threads are doing - perhaps you asked them to do a blocking put on a channel that isn't being read?


my guess would be something similar, go blocks launching threads and not waiting for them to finish(so no feedback), and the threads are blocked on a shared resource (maybe a connection pool) so you are calling thread faster then they can complete their tasks


the number of live threads is less then the number of total started, which makes me guess the theads aren't blocked forever and are completing, you are just creating them faster then they complete