java - sesion - log in interactive brokers
DefiniciĆ³n de corriente (6)
Java realiza transmisiones de E / S. Una corriente es una abstracción que produce o consume información. Una secuencia está vinculada a un dispositivo físico por la secuencia de E / S de Java. Las transmisiones son una forma limpia de lidiar con la entrada o salida sin tener que entender todas las partes del código. Java define dos tipos de flujo: byte y carácter
Estoy leyendo sobre flujos de E / S de Java y estoy confundido con la definición correcta asociada a ellos.
- Algunos dicen que una corriente es una especie de cinta transportadora en la que se transmiten datos ...
- otros dicen que una secuencia es un flujo o una secuencia de datos ...
- otros dicen que una transmisión es una conexión a una entrada o una fuente de salida ...
Entonces, ¿cuál es la definición correcta?
Yo diría que un Stream es como todos estos, pero no exactamente ninguno de estos.
Yo diría que es una secuencia ordenada de bytes de 8 bits.
Una transmisión es un concepto, pero no es tan estricto, solo una sola descripción sería correcta.
Una E / S Stream representa una fuente de entrada o un destino de salida. Una secuencia puede representar muchos tipos diferentes de fuentes y destinos, incluidos archivos de disco, dispositivos, otros programas y matrices de memoria. Los flujos admiten muchos tipos diferentes de datos, incluidos los bytes simples, los tipos de datos primitivos, los caracteres localizados y los objetos. Algunas transmisiones simplemente transmiten datos; otros manipulan y transforman los datos de maneras útiles.
Independientemente de cómo funcionen internamente, todas las transmisiones presentan el mismo modelo simple para los programas que las utilizan: una transmisión es una secuencia de datos.
De: http://download.oracle.com/javase/tutorial/essential/io/streams.html
También una secuencia es una corriente de entrada o una secuencia de salida. Si se trata de un flujo de entrada, en Java se adherirá a la interfaz InputStream
, este último a Outputstream
.
(Nota: en criptografía, por ejemplo, existe una diferencia entre el flujo y el cifrado de bloques, donde un cifrado de flujo es algo que no sabe (en un sentido muy general) nada sobre el futuro, mientras que un cifrado de bloques conoce su tamaño (máximo) en avance y los tamaños de todos los bloques que vienen.)
Los programas Java realizan E / S a través de transmisiones. Una corriente es una abstracción que produce o consume información. Una secuencia está vinculada a un dispositivo físico por el sistema de E / S de Java. Todas las secuencias se comportan de la misma manera, incluso si difieren los dispositivos físicos reales a los que están vinculados. Por lo tanto, las mismas clases y métodos de E / S se pueden aplicar a cualquier tipo de dispositivo. Esto significa que un flujo de entrada puede abstraer muchos tipos diferentes de entrada: desde un archivo de disco, un teclado o un socket de red. Del mismo modo, una secuencia de salida puede referirse a la consola, un archivo de disco o una conexión de red. Las transmisiones son una forma clara de lidiar con la entrada / salida sin que cada parte de su código comprenda la diferencia entre un teclado y una red, por ejemplo. Java implementa las secuencias dentro de las jerarquías de clase definidas en el paquete java.io.
De: Java, la referencia completa
En mi opinión, el flujo de puntos es en realidad una cinta transportadora como mencionas en el primer punto. En realidad, hay dos tipos de flujo, entrada y salida. Un flujo de entrada se utiliza para leer los datos del dispositivo de entrada como palabras clave y escribir esos datos en los archivos y la secuencia de salida se utilizan para leer datos de los discos, archivos, etc. y escribir esos datos en el dispositivo de salida como consola, monitor, etc. De manera simple, es el puente que ayuda a transportar las cosas de un punto a otro.
Solo piénselo de esta manera: los flujos son objetos que puede pedir para piezas de datos o para enviar fragmentos de datos.