Java: Vaciar el bucle while

Estoy haciendo un programa con bucles while que se ejecutan de esta manera:

El hilo principal entra en un bucle while. Nada sucede en el ciclo while. Thread permanecerá en el ciclo while hasta que se cumpla la condición.Otro hilo ejecuta una función que satisfará dicha condición.

Aquí hay un ejemplo

while(path != null);

Hay otra función en la clase que establecerá la ruta como nula, y una vez que eso suceda, el hilo principal debería salir de este bucle. La otra función se llama en otro hilo.

Sin embargo, el subproceso principal no sale del bucle incluso cuando la ruta se establece en nulo. ¿Alguna sugerencia

CÓDIGO

try 
 { 
  for (Node n:realpath) 
    { 
      Thread.sleep(100); 
      actor.walk(n); 
     }
    Thread.sleep(100); 
 } 
 catch (InterruptedException ex) 
  { 
    Logger.getLogger(VNScreen.class.getName()).log(Level.SEVERE, null, ex); 
  } 
  realpath.clear(); 
  path = null;

if(path == null)
    System.out.println("NULLED PATH");

Respuestas a la pregunta(8)

Su respuesta a la pregunta