Una forma sencilla y rápida de aprender JAVA, observando y deduciendo cómo se comporta el lenguaje a través de ejemplos prácticos.

jueves, 18 de marzo de 2010

Ejecutar 2 procedimientos a la vez: Threads

Codigo:

  1. public class Main {
  2. ..public static void main(String[] args) {
  3. ....new Tarea("Tarea1").start();
  4. ....new Tarea("Tarea2").start();
  5. ..}
  6. }
  7. class Tarea extends Thread {
  8. ..public Tarea(String str) {
  9. ....super(str);
  10. ..}
  11. @Override // Quita el aviso del Warning
  12. ..public void run() {
  13. ....int tar = 0;
  14. ....if (getName().equals("Tarea1")) tar = 1;
  15. ....if (getName().equals("Tarea2")) tar = 2;
  16. ....switch (tar) {
  17. ......case 1: // Tarea 1
  18. ........for (int a = 0; a < 5; a++){
  19. ..........System.out.println(getName()+": "+a);
  20. ........}
  21. ........break;
  22. ......case 2: // Tarea 2
  23. ........for (int b = 0; b < 5; b++){
  24. ..........System.out.println(getName()+": "+b);
  25. ........}
  26. ....}
  27. ..}
  28. }

Resultado:

  • Tarea1: 0
  • Tarea1: 1
  • Tarea1: 2
  • Tarea2: 0
  • Tarea2: 1
  • Tarea2: 2
  • Tarea2: 3
  • Tarea2: 4
  • Tarea1: 3
  • Tarea1: 4

Nota: Las 2 tareas se ejecutan al mismo tiempo, por eso en el resultado puede aparecer mezclados los resultados de la Tarea1 con el de la Tarea2.

No hay comentarios:

Publicar un comentario

Con la tecnología de Blogger.