Wenn ein Java-Programm System.out.println() oder ein Scala-Programm aufruft, ruft println() den Threadblock auf?Wird die Konsolenausgabe blockiert?
Ich schreibe ein Scala-Programm mit einer großen Anzahl von Teilaufgaben. Jede Teilaufgabe wird innerhalb einer Zukunft ausgeführt. Es wird empfohlen, den Code innerhalb von Akteuren und Futures nicht zu blockieren, damit auch nachfolgende Aufgaben nicht warten müssen. Aber ich möchte sehr viel auf der Konsole drucken.
Und wenn es eine Blockierung ist: Was kann ich tun, um die Leistung zu optimieren?
Natürlich könnte ich versuchen, die Menge der Ausgabe zu reduzieren oder einige Ausgaben in einem StringBuilder zu sammeln und sie in einem Stapel zusammen zu drucken, was die Anzahl der Ausgabevorgänge reduziert.
* Schreibprotokolle zu einem anderen Dateisystem. * Sie bedeuten unterschiedliche physisches Laufwerk? Oder wenn Sie meinen, dass ein Dateisystem für solche Aufgaben besser als ein anderes System optimiert ist (z. B. ext * versus btrfs), könnten Sie dann die Namen aufdecken? –
Nein, ich meine wirklich IO-Kette, nicht anders FS-Typ @ om-nom-nom. Großer Benutzername BTW. :-) – Gray
Dies. Dies ist eine gut formatierte und hilfreiche Antwort. – Andy