Wie kann ich eine Datei in Java mit Multithreading lesen? Es spielt keine Rolle, wenn es langsamer als einmal ist, muss ich es tun. So, zum Beispiel, wenn es 2 Threads gibt, liest der erste die erste Zeile und gleichzeitig liest der zweite die zweite Zeile; dann liest der erste die dritte Zeile und der zweite liest die vierte Zeile und sie lesen auf diese Weise seit dem Ende der Datei weiter. Wie kann ich das in Java implementieren?Verwenden mehrerer Threads zum Lesen der gleichen Datei in Java
-1
A
Antwort
1
Verwenden Sie einfach eine einzige BufferedReader
, die zwischen den Threads freigegeben ist, und synchronisieren Sie sie beim Aufruf readLine()
.
Es ist völlig sinnlos.
Verwandte Themen
- 1. Datei von vielen Threads in Java lesen
- 2. Threads zum Lesen und Schreiben von Java
- 3. Batch-Datei zum Lesen mehrerer Textzeilen in der Textdatei
- 4. C++/C Mehrere Threads zum gleichzeitigen Lesen der gz-Datei
- 5. Sync-Threads zum gleichen Zeitpunkt verschiedene Ressourcen zu lesen
- 6. Verwenden der Java-API zum Lesen von Lotus Notes-Dokumenten
- 7. SQL-Abfrage zum Vergleichen mehrerer Werte in der gleichen Spalte
- 8. Variable eines asynchronen Threads in JAVA lesen
- 9. Verwenden mehrerer Funktionen zum Erstellen der Zeichenfolgenvariable
- 10. Lesen mehrerer Zeilen von der Konsole in Java
- 11. Datei lesen in Java
- 12. Zwei Threads arbeiten auf der gleichen Liste
- 13. Verwenden der FileReader-Klasse zum Lesen der Datei vom Speicherort Java
- 14. Java empfohlene Methode zum Herunterfahren mehrerer Benutzersitzungen
- 15. Python-Karte zum Lesen mehrerer TXT-Dateien
- 16. Java - Können zwei Threads auf der Clientseite den gleichen Eingabestream vom Server verwenden?
- 17. Verwenden Sie HTML5 zum Lesen der Excel-Datei
- 18. Verwenden von Multithread zum Verbinden mehrerer Verbindungszeichenfolgen
- 19. SQLite: Verbindungen über Threads zum Lesen und Schreiben freigeben
- 20. Threads in Java - verwenden Schlaf innerhalb Lauf
- 21. Lesen der SPSS-Code-Datei in JAVA
- 22. lesen XML-Datei in der Java-
- 23. Wie könnte ich Jython-Threads als Java-Threads verwenden?
- 24. Berechtigung zum Lesen von System.in in Java
- 25. JSON - Datei in Java lesen
- 26. Starten mehrerer Threads in einem IntentService
- 27. Verwenden von MultiBinding zum Berechnen der Summe mehrerer Textfelder
- 28. Java - Datei lesen/schreiben
- 29. Batch-Skript zum Kopieren der gleichen Datei
- 30. Verwenden der Java-JAR-Datei in .NET
Sie müssten eine Sequenz einrichten, so dass der nächste Thread nicht gestartet wird, bis der letzte Thread abgeschlossen ist, es sei denn, Ihre Datei unterstützt den wahlfreien Zugriff – MadProgrammer
Und wenn ich eine Binärdatei verwende, so dass es wahlfreien Zugriff unterstützt? – Bern
Dann können Sie in der Theorie 'suchen' von etwas wie [' RandomAccessFile'] (https://docs.oracle.com/javase/8/docs/api/java/io/RandomAccessFile.html) verwenden, um das zu positionieren Lese den Zeiger dorthin, wo du willst. Aber Sie werden wahrscheinlich feststellen, dass jeder 'Thread' die Datei in seinem eigenen Kontext öffnen muss. – MadProgrammer