Многопоточность Java и время ожидания - PullRequest
0 голосов
/ 22 июля 2011

Я пытаюсь многопоточность моего Java-приложения с ScheduledThreadPoolExecutor.Я делаю это, отправляя задачи в будущий список, а затем пытаюсь получить результаты из будущего списка.Однако, по какой-то причине, он все еще использует только одно ядро ​​на компьютере, когда я запускаю htop.

Кроме того, иногда зависают процессы, что, я подозреваю, происходит из-за библиотек, которые я использую, так чтобыло бы хорошим способом реализовать по существу ограничение по времени, после которого поток перезапускается с новым объектом?

Спасибо.

1 Ответ

1 голос
/ 22 июля 2011

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

Чтобы использовать более одного процессора, вам нужно иметь более одной задачи, интенсивно загружающей процессор. Если вы выполняете одну задачу за раз, вы будете использовать не более одного ядра.

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