Outputstream an verschiedenen Positionen beschreiben

Erebos1988

Mitglied
Hallo
Ich würde gerne einen Outputstream aus Threads heraus beschreiben.
Mein Problem ist, das der Stream an verschiedenen Stellen anfangen soll.
So wie es auch bei einem Bildrenderer ist. Zwischenspeichern möchte ich die Daten nicht.
 
S

SlaterB

Gast
ein Stream ohne Zwischenspeichern ist wie ein Zug der an einem Bahnhof vorbeifährt, mal abgesehen davon dass die Wagen vielleicht erst rangehängt werden,
es gibt keine verschiebenen Positionen, kein Vor und Zurück,
das einzige was du machen kannst, ist, die Aktionen so zu koordinieren, dass sie alle zum richtigen Zeitpunkt beim geordneten einmaligen Durchlauf drankommen
 
Zuletzt bearbeitet von einem Moderator:

Erebos1988

Mitglied
Dann komme ich ums Zwischenspeichern wohl nicht drum rum.Das ist schade, da ich mir sonst einen Schleifendurchlauf erspart hätte, der schon ein wenig Zeit in Anspruch nimmt.

Aber wie machen die Renderprogramme das dann?
Da sieht man ja erst ein schwarzes Bild und dann Stück für Stück das gerenderte Bild. Und das wird auch an mehreren Bildpositionen aufgebaut, je nachdem wie viele CPU Kerne zur Verfügung stehen.
 
S

SlaterB

Gast
ich vermute grob, dass die das gesamte Bild im Speicher haben und von den 10 MB = Millionen Bildpunkten periodisch gewisse Abschnitte austauschen,
das Bild muss eh immer komplett übertragen und gezeichnet werden, zig mal im gesamten Vorgang oder gar pro Sekunde,
was bringt es da, etwas nicht zwischenzuspeichern?
 

FArt

Top Contributor
Die Anforderung an sich ist ja schon Schmarrn.
Du kannst ja nicht völlig unkoordiniert auf dem Stream schreiben. Also müssen die schreibenden Zugriffe synchronisiert werden. Somit würde ich das grundsätzlich über eine Queue lösen. Dann sind auch nur noch nicht bearbeitete Daten kurzfristig im Speicher vorhanden.
Mehrere Producer erzeugen Daten, legen diese in eine Queue ab. Ein Consumer liest Daten aus der Queue und schreibt sie auf dem Stream.
Wenn eine bestimmte Reihenfolge eingehalten werden muss, dann bleibt dir (wie schon erwähnt) ein koordiniertes Schreiben mit Zwischenspeichern nicht erspart. Wenn du aber an Heap sparen musst, dann kannst du ja einen persistenten Zwischenspeicher wählen. Lege dort die einzelnen Teile auf der Platte ab und streamse sie dann danach koordiniert weiter.

Hilfreich, bevor du die Queue selber strickst:
java.util.concurrent (Java 2 Platform SE 5.0)
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
W Mal ein paar generelle Fragen zu InputStream und OutputStream Allgemeine Java-Themen 4
T Input und Outputstream , serielle Schnittstelle Allgemeine Java-Themen 1
Meeresgott Input/Output OutputStream löscht Datei Allgemeine Java-Themen 7
F Jar OutputStream Allgemeine Java-Themen 4
T Outputstream write() gets blocked using RXTX to communicate with HC-05 BT Module Allgemeine Java-Themen 10
D Java Process OutputStream ist null Allgemeine Java-Themen 4
P Input/Output Process.getErrorStream = OutputStream Allgemeine Java-Themen 11
G Auf Kommandozeile über Processobjekt mit Outputstream Allgemeine Java-Themen 3
M rxtx OutputStream sendet falsche werte Allgemeine Java-Themen 3
L Abspeichern von OutputStream Allgemeine Java-Themen 6
A Eigenen OutputStream schreiben und verwenden Allgemeine Java-Themen 9
D zip Dateien schreiben mit in/outputstream Allgemeine Java-Themen 10
S OutputStream via POST senden Allgemeine Java-Themen 4
T OutputStream to InputStream Allgemeine Java-Themen 8
W StringBuilder effektiv auf OutputStream schreiben Allgemeine Java-Themen 3
Landei CipherInput/OutputStream-Problem Allgemeine Java-Themen 2
S von OutputStream in InputStream schreiben ohne das es blockiert..? Allgemeine Java-Themen 2
G Double Wert über OutputStream verschicken Allgemeine Java-Themen 2
S outputstream über fileUrl Allgemeine Java-Themen 15
L Problem mit dem OutputStream eines Prozesses Allgemeine Java-Themen 9
G OutputStream to System.out Allgemeine Java-Themen 35
I input-/outputstream Allgemeine Java-Themen 6
Junktyz In Writer und Outputstream wird teilweise nicht geschrieben Allgemeine Java-Themen 3
reibi FileOutputStream aus OutputStream erstellen Allgemeine Java-Themen 7
H Problem mit OutputStream Allgemeine Java-Themen 5
T OutputStream - Prozente ermitteln Allgemeine Java-Themen 3
T OutputStream - Event bei Byte-Fluss Allgemeine Java-Themen 5
A Inputstream in Outputstream umleiten Allgemeine Java-Themen 7
D Cipher(In)OutputStream Allgemeine Java-Themen 3
R Ladebalken für einen Outputstream. Allgemeine Java-Themen 10
J Binärdateien mit Input/Outputstream lesen und schreiben Allgemeine Java-Themen 3
m@nu Schreibschutz entfernen und OutputStream öffnen Allgemeine Java-Themen 6
T Problem mit Outputstream? Allgemeine Java-Themen 2
Master3000 Dateien zwischen verschiedenen Netzwerken senden Allgemeine Java-Themen 17
Drachenbauer Wie muss ein Konstructor aussehen, um dinge mit verschiedenen Zusätzen in den "<>" anzunehmen? Allgemeine Java-Themen 1
M Wie kann man eine void Methode mit Variablen von zwei verschiedenen Objekten ausführen? Allgemeine Java-Themen 15
A Classpath Library in verschiedenen Projekten Allgemeine Java-Themen 2
S Spielfeld aus verschiedenen Kacheln Allgemeine Java-Themen 35
U Variablen Stringarrays mit wenig verschiedenen Zeichen effizienter speichern Allgemeine Java-Themen 10
M ArrayList mit verschiedenen Datentypen in String konvertieren Allgemeine Java-Themen 10
M Null byte in verschiedenen charsets Allgemeine Java-Themen 2
M Testen von verschiedenen Produktversionen Allgemeine Java-Themen 3
C Vigenere und Caesar in verschiedenen Alphabeten Allgemeine Java-Themen 1
A Threads Lock über mehrere Abschnitte in verschiedenen Methoden Allgemeine Java-Themen 5
T Datentypen Eine Liste - verschiedenen Klassen - eine Abstracte Klasse Allgemeine Java-Themen 3
P Objekt mit verschiedenen Datentypen Allgemeine Java-Themen 5
P Anzahl vo Einträgen in verschiedenen Sets Allgemeine Java-Themen 3
R Input/Output Dateizugriff aus verschiedenen Tools Allgemeine Java-Themen 3
J Druckprobleme bei verschiedenen Schriftarten/-größen Allgemeine Java-Themen 7
B File Seperator unter verschiedenen OS Allgemeine Java-Themen 2
G Gleiche Packages in verschiedenen JAR Dateien - Welches Package wird verwendet? Allgemeine Java-Themen 5
K Programm mit verschiedenen Parametern starten Allgemeine Java-Themen 2
N Dateizugriff in verschiedenen Ordnern Allgemeine Java-Themen 2
S Fragen zu verschiedenen Themen vom JCreator Allgemeine Java-Themen 2
S Frage zu verschiedenen Java Projekten Allgemeine Java-Themen 6
D Logger mit verschiedenen Ausgabezielen Allgemeine Java-Themen 2
H2SO3- sichtbarkeit in verschiedenen paketen Allgemeine Java-Themen 2
R Kann ich die jars eines Applets auf verschiedenen Domains hosten? Allgemeine Java-Themen 2
T DataFrame (Matrix mit mit verschiedenen Typen pro Spalte) Allgemeine Java-Themen 4
R Aktuelle Kompatibilitätsliste für JRE auf verschiedenen OS´s Allgemeine Java-Themen 2
MQue Methoden in verschiedenen Klassen aufrufen Allgemeine Java-Themen 21
MQue JButton an verschiedenen Variablen Allgemeine Java-Themen 2
J parsen von verschiedenen dokument typen Allgemeine Java-Themen 3
D generischer Iterator mit verschiedenen Typen Allgemeine Java-Themen 3
S Arrayelemente in verschiedenen Variationen zurückgeben Allgemeine Java-Themen 12
T Herunterfahren oder Neustarten der verschiedenen OS Allgemeine Java-Themen 11
C Sichbarkeit von Objekten / Methoden in verschiedenen Files Allgemeine Java-Themen 7
N Variablen Positionen vergleichen ??? Allgemeine Java-Themen 2
D Positionen im String binär codiert Allgemeine Java-Themen 4

Ähnliche Java Themen

Neue Themen


Oben