Estoy escribiendo una aplicación para Android y estoy usando subprocesos de trabajo para procesar cierta información. Después de leer mi código, ahora no estoy seguro si es seguro para subprocesos.¿Es seguro este subproceso?
He escrito una versión simplificada de mi código, he omitido el objeto Handler
utilizado para comunicarse con el hilo principal y, obviamente, el proceso en sí.
public class myClass implements Runnable
{
private String myString;
@Override
public void run()
{
myString = "Some Value";
}
}
Esto se denomina al ejecutar algo similar a esto.
myClass class = new myClass();
Thread thread = new Thread(class);
thread.start()
Por lo tanto, este código no es hilo de seguridad porque yo estoy modificando myString
(declarada en el hilo principal) en la función run()
?
Su pregunta me recuerda mucho a este artículo http://blogs.msdn.com/b/ericlippert/archive/2009/10/19/what-is-this-thing-you-call-thread-safe. aspx –