Foros aprenderaprogramar.com

Aprender a programar => C, C++, C#, Java, Visual Basic, HTML, PHP, CSS, Javascript, Ajax, Joomla, MySql y más => Mensaje iniciado por: @mayakoski en 12 de Febrero 2020, 04:45

Título: Concepto inmutable java paquete java lang clases interfaces ejercicio CU00911C
Publicado por: @mayakoski en 12 de Febrero 2020, 04:45
Respuesta para el ejercicio CU00911C del tutorial de programación avanzada Java de aprenderaprogramar.

Citar
EJERCICIO

En esta entrega hemos podido ver lo siguiente: StringBuilder puede ofrecer resultados no consistentes en una ejecución multihilo (concurrente, con distintos “subprogramas” ejecutándose simultáneamente) ya que sus métodos no son sincronizados.

Busca información en internet y trata de poner un ejemplo de cómo podría generarse una inconsistencia en programación multihilo. No hace falta que escribas código, únicamente es necesario describir en unas pocas líneas (como si estuvieras explicándoselo a un amigo) la idea o situación.

El problema con el uso de StringBuilder en la ejecución de multihilos es que al no ser sincronizado, en diferentes ejecuciones puede darse el caso que los cambios generados a la cadena no se realicen en el orden que deseamos, y un hilo realice un cambio antes de lo que se esperaba produciendo inconsistencia en el resultado final, lo cual no sucede si la ejecución es como una variable local, en el cual no importa la sincronización
Título: Re:Concepto inmutable java paquete java lang clases interfaces ejercicio CU00911C
Publicado por: Ogramar en 07 de Septiembre 2020, 20:21
Buenas, para quien revise este hilo la respuesta me parece correcta aunque para mayor claridad puede verse una explicación más amplia en https://aprenderaprogramar.com/foros/index.php?topic=6848.0

Salu2