Я использую функцию параллелизма Java 1.6 для выполнения какой-либо задачи в автономном режиме. Когда пользователь будет создан путем регистрации, мне нужно выполнить некоторые задачи протоколирования Inhouse & Я не хочу, чтобы заблокировать пользователя, поэтому я использую ниже кодПараллелизм через ExecutorService в Java
java.util.concurrent.ExecutorService myservice = Executors.newSingleThreadExecutor();
myservice.execute(new myTask(user));
Здесь я имеющий внутренний класс myTask, который реализует Runnable & в методе «Выполнить», я выполняю автономную работу (тем самым делая ее как неблокирующий вызов).
Теперь, как только пользователь входит в систему на веб-сайте, есть определенные действия (кнопки на веб-страницах), на которые мне нужно делать подобные действия в автономном режиме. & Я не хочу, чтобы вызов вызывался как блокирующий вызов. У меня есть 4 действия на этой странице, на которых мне нужно выполнять автономные задачи.
Можно ли использовать аналогичный выше код с 4 различными внутренними классами & выполнять автономную деятельность внутри них ?? Если нет, то какая альтернатива?
Спасибо!
Я использую Struts2 & in struts action, у меня есть эта исполнительная нить. Вы могли бы предоставить примерную строку о том, как реализовать пул потоков? Нужно ли настраивать размер пула потоков? Если да, то где? Я использую сервер tomcat 6. – Mike
@ Майк добавил образец кода. вам нужно убедиться, что вы создаете пул протектора только один раз и завершаете работу, прежде чем веб-приложение будет остановлено. –
Я все еще новичок в использовании этих API. Я вижу, что вы вызвали newFixedThreadPool. Но тогда как он будет называть myTask, который является моим внутренним классом, который реализует интерфейс Runnable? Мне нужно вызвать pool.execute (новый myTask (пользователь)); Кроме того, что произойдет, если более 10 пользователей попытаются получить доступ к веб-сайту? – Mike