realizar un programa con 4 hilos

Upload: ricardo-fernandez-pallo

Post on 30-Oct-2015

60 views

Category:

Documents


0 download

TRANSCRIPT

Realizar un programa con 4 hilos. Cada uno de ellos mostrara 5 mensajes por pantalla indicando su nombre y la hora actual. Despus de cada acceso a la pantalla se dormirn 10000milisegundos.

Simular una cuenta bancaria con 2 hilos, uno simulara el ingreso y el otro la extraccin de dinero de la cuenta. La cuanta tendr un capital inicial. Realizar 10 ingresos y 5 extracciones.Ejercicio 3:Realizar un programa que lea frases por teclado hasta que se introduzca una lnea con la palabra fin y lo grabe en un fichero. Se disearn dos hilos, uno se encargar de la lectura de las frases y el otro de la grabacin del fichero.import java.io.BufferedReader;import java.io.File;import java.io.IOException;import java.io.InputStreamReader;import java.io.PrintWriter;public class Controller {private static Controller INSTANCE = null;private Controller() {new Thread(new ThreadReader()).start();}public void writeToFile(String text) {new Thread(new ThreadWriter(text)).start();}public synchronized static Controller getInstance() {if (INSTANCE == null)INSTANCE = new Controller();return INSTANCE;}public class ThreadReader implements Runnable {@Overridepublic void run() {BufferedReader br = new BufferedReader(new InputStreamReader(System.in));String line, text = "";try {while ((line = br.readLine()).toLowerCase().compareTo("fin") != 0)text += line + "\r\n";} catch (IOException e) {e.printStackTrace();}Controller.getInstance().writeToFile(text);}}public class ThreadWriter implements Runnable {private String text;public ThreadWriter(String text) {this.text = text;}@Overridepublic void run() {try {PrintWriter pw = new PrintWriter(new File("data.txt"));pw.println(text);pw.close();} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}}}}

public class Main {public static void main(String[] args) {Controller.getInstance();}}