javax.enterprise.concurrent

Interface ManagedThreadFactory

  • All Superinterfaces:
    ThreadFactory

    public interface ManagedThreadFactory
    extends ThreadFactory
    A manageable version of a ThreadFactory.

    A ManagedThreadFactory extends the Java™ SE ThreadFactory to provide a method for creating threads for execution in a Java™ EE environment. Implementations of the ManagedThreadFactory are provided by a Java™ EE Product Provider. Application Component Providers use the Java Naming and Directory Interface™ (JNDI) to look-up instances of one or more ManagedThreadFactory objects using resource environment references.

    The Concurrency Utilities for Java™ EE specification describes several behaviors that a ManagedThreadFactory can implement. The Application Component Provider and Deployer identify these requirements and map the resource environment reference appropriately.

    Threads returned from the newThread() method should implement the ManageableThread interface. The Runnable task that is allocated to the new thread using the ThreadFactory.newThread(Runnable) method will run with the application component context of the component instance that created (looked-up) this ManagedThreadFactory instance.

    The task runs without an explicit transaction (they do not enlist in the application component's transaction). If a transaction is required, use a javax.transaction.UserTransaction instance. A UserTransaction instance is available in JNDI using the name: "java:comp/UserTransaction"

    Example:

     public run() {
       // Begin of task
       InitialContext ctx = new InitialContext();
       UserTransaction ut = (UserTransaction) ctx.lookup("java:comp/UserTransaction");
       ut.begin();
    
       // Perform transactional business logic
    
       ut.commit();
     }
    A ManagedThreadFactory can be used with Java SE ExecutorService implementations directly.

    Example:

     /**
     * Create a ThreadPoolExecutor using a ManagedThreadFactory.
     * Resource Mappings:
     *  type:      javax.enterprise.concurrent.ManagedThreadFactory
     *  jndi-name: concurrent/tf/DefaultThreadFactory
     */
    
     @Resource(name="concurrent/tf/DefaultThreadFactory")
     ManagedThreadFactory tf;
     
     public ExecutorService getManagedThreadPool() {
    
       // All threads will run as part of this application component.
       return new ThreadPoolExecutor(5, 10, 5, TimeUnit.SECONDS,
           new ArrayBlockingQueue<Runnable>(10), tf);
     }
     

    Since:
    1.0
    • Method Summary

      • Methods inherited from interface java.util.concurrent.ThreadFactory

        newThread

Deutsche Übersetzung

Sie haben gebeten, diese Seite auf Deutsch zu besuchen. Momentan ist nur die Oberfläche übersetzt, aber noch nicht der gesamte Inhalt.

Wenn Sie mir bei Übersetzungen helfen wollen, ist Ihr Beitrag willkommen. Alles, was Sie tun müssen, ist, sich auf der Website zu registrieren und mir eine Nachricht zu schicken, in der Sie gebeten werden, Sie der Gruppe der Übersetzer hinzuzufügen, die Ihnen die Möglichkeit gibt, die gewünschten Seiten zu übersetzen. Ein Link am Ende jeder übersetzten Seite zeigt an, dass Sie der Übersetzer sind und einen Link zu Ihrem Profil haben.

Vielen Dank im Voraus.

Dokument erstellt 11/06/2005, zuletzt geändert 18/08/2025
Quelle des gedruckten Dokuments:https://www.gaudry.be/de/java-api-javaee-rf-javax/enterprise/concurrent/managedthreadfactory.html

Die Infobro ist eine persönliche Seite, deren Inhalt in meiner alleinigen Verantwortung liegt. Der Text ist unter der CreativeCommons-Lizenz (BY-NC-SA) verfügbar. Weitere Informationen auf die Nutzungsbedingungen und dem Autor.

Referenzen

  1. Zeigen Sie - html-Dokument Sprache des Dokuments:fr Manuel PHP : https://docs.oracle.com/en/java/, Interface ManagedThreadFactory

Diese Verweise und Links verweisen auf Dokumente, die während des Schreibens dieser Seite konsultiert wurden, oder die zusätzliche Informationen liefern können, aber die Autoren dieser Quellen können nicht für den Inhalt dieser Seite verantwortlich gemacht werden.
Der Autor dieser Website ist allein dafür verantwortlich, wie die verschiedenen Konzepte und Freiheiten, die mit den Nachschlagewerken gemacht werden, hier dargestellt werden. Denken Sie daran, dass Sie mehrere Quellinformationen austauschen müssen, um das Risiko von Fehlern zu reduzieren.