Нить в методе RoundRobin - PullRequest
1 голос
/ 29 июня 2011

Вот пример кода, если размер потока равен 3, значит, все в порядке.где я могу управлять памятью.если размер резьбы равен 50, проблема кроется.мне нужно установить размер потока как 5. готовый поток должен быть повторно использован другими

Thread[] TCreate = new Thread[iThreadSize]; 
for (int i = 0; i< TCreate.length; i++) {

    TCreate[i] = new Thread(new Runnable() {
        public void run() {
            lst.Add(this.getResult(url));
        }
    });
    TCreate[i].setName("URL"+i);
    TCreate[i].start(); }

for (int j = 0; j < TCreate.length; j++)
    while (TCreate[j].isAlive())
         Thread.sleep(10);

Может ли кто-нибудь помочь, что является использование метода setDaemon ()Какова цель Daemon Пожалуйста, помогите мне .. Заранее спасибо

Ответы [ 2 ]

2 голосов
/ 29 июня 2011

setDaemon определяет, является ли поток потоком демона или нет. Если потоки демона все еще работают, когда программа достигает конца основного метода, это не удерживает программу от выхода. Потоки, не являющиеся демонами (пользовательские потоки), не позволяют программе завершать работу.

1 голос
/ 29 июня 2011

Java уже включает методы для управления пулами потоков.

вызов Executors.newFixedThreadPool(5) создаст для вас пул потоков с 5 рабочими потоками.

После этого вы можете просто назначить Runnables, которые будут выполняться одним из потоков в пуле.

Смотри также:

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...