I am using this code to create threads.
while ((strLine = br.readLine()) != null) {
r = new runnable(strLine);
new Thread(r).start();
x++;
Thread.sleep(100);
}
How can I control the maximum number of threads running at any point of time?
This code has issues where memory used keeps rising(memory leak) is there a better way to do this?
I tried using scheduler but didnt help.
You can use an
ExecutorServiceto create constrained thread pools.will create a pool with 10 available threads. You can then call
for each unit of work.
EDIT: I should note that this facility is only available in Java 1.5 and later.