1. Anwendungsszenarien
(1) Gewöhnliche Browser und Netzwerkdienste (das jetzt geschriebene Netzwerk ist eine Zwischenkomponente, die Ihnen bei der vollständigen Thread-Steuerung hilft), Netzwerk Verarbeitungsanforderungen, verschiedene dedizierte Server (z. B. Spieleserver)
(2) Servlet-Multithreading.
(3) FTP-Download, Multithread-Dateivorgang.
(4) In der Datenbank verwendetes Multithreading.
(5) Tomcat und Tomcat verwenden intern Multithreading. Nach dem Zugriff auf Tomcat wird die nachfolgende Verarbeitung in einen neuen Thread verschoben Unser Servlet-Programm
(6) Hintergrundaufgaben: zum Beispiel regelmäßiges Senden von E-Mails an eine große Anzahl von Benutzern (mehr als 1 Million); regelmäßige Aktualisierung von Konfigurationsdateien und Aufgabenplanung (z. B. Quarz) und Einige Überwachungsmaßnahmen zur regelmäßigen Erfassung von Informationen.
(7) Automatische Vorgangsverarbeitung: wie regelmäßige Sicherung von Protokollen, regelmäßige Sicherung der Datenbank usw.
2. Beispiel
Wartezeitüberschreitungsmodus.
Entwickler verwenden diese Methode häufig zum Aufrufen von Szenen. Warten Sie beim Aufrufen einer Methode einen bestimmten Zeitraum (normalerweise einen bestimmten Zeitraum). Wenn die Methode das Ergebnis innerhalb des angegebenen Zeitraums abrufen kann, wird das Ergebnis sofort zurückgegeben Das Standardergebnis wird zurückgegeben.
Eine einfache Datenbankverbindungspoolinstanz.
//java.sql.Connection是一个接口,最终的实现是由数据库驱动提供方来实现。 //我们通过动态代理构造一个Connection,仅仅用于示范。 public class ConnectionDriver { //动态代理的处理器类 static class ConnectionHandler implements InvocationHandler{ @Override public Object invoke(Object proxy, Method method, Object[] args) throws Throwable { Thread.sleep(100); return null; } } //创建一个Connection的代理,在commit时休眠100毫秒 public static final Connection createConnection(){ return (Connection)Proxy.newProxyInstance(ConnectionDriver.class.getClassLoader(), new Class<?>[]{Connection.class}, new ConnectionHandler()); } }
Das obige ist der detaillierte Inhalt vonVerwendung und Implementierung von Java-Multithreading. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!