import org.jboss.ejb3.annotation.Pool; import javax.ejb.Singleton; import javax.ejb.Startup; import javax.inject.Inject; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; @Singleton @Startup public class MyService { @Inject @Pool("my-pool") private ExecutorService executorService; public void executeTasks() { for (int i = 0; i < 10; i++) { executorService.submit(() -> { System.out.println("Task executed by thread: " + Thread.currentThread().getName()); }); } } } <subsystem xmlns="urn:jboss:domain:ee:1.2"> <default-bindings ...> <lookup name="java:comp/DefaultManagedExecutorService" lookup="java:comp/DefaultManagedExecutorService"/> </default-bindings> ... <concurrency:default-container> <concurrency:jndi-name>java:comp/DefaultManagedExecutorService</concurrency:jndi-name> <concurrency:default-max-pool-size>50</concurrency:default-max-pool-size> <concurrency:default-queue-length>1000</concurrency:default-queue-length> </concurrency:default-container> </subsystem>


上一篇:
下一篇:
切换中文