package thread9;

/**
 * Thread, der zunächst eine Zufallszahl erzeugt und in einer Schleife diesen
 * Wert immer wieder als Koordinaten eines Point-Objektes setzt und abfragt.
 * Sollten die Koordinaten nicht gleich sein (durch Unterbrechung eines anderen Threads)
 * wird eine Meldung ausgegeben.
 * 
 * @author  Ralf Kunze (rkunze@uos.de), Institut fuer Informatik, Universitaet Osnabrueck
 * @date 04.05.2007
 */
public class ChangerThread extends Thread{
	private Point p;
	
	public ChangerThread(Point p) {
		this.p = p;
	}
	
	public void run() {
		// Zufallszahl erzeugen
		int x = (int)(Math.random()*1000), y = x;
		
		// Endlosschleife
		while(true) {
			// Werte setzen
			p.x = x;
			p.y = y;
			
			// Werte abfragen
			int tx = p.x, ty = p.y;
			
			// Werte noch gleich?
			if (tx!=ty) {
				System.err.printf("OhOh: p.x=%d p.y=%d%n",tx,ty);
			} 
		}
	}
}
