Multihilos

greivin
20 de Abril del 2008
Tengo una duda nunca he utilizado hilos y tengo que implementarlo en una aplicación que cuenta la cantidad de letras digitadas en un texto; tengo que hacer esto:

El cálculo de la cantidad de letras se deberá hacer con hilos, mínimo 5 hilos.
Los hilos deberán dar un solo resultado, cuando un hilo termina se llega a otro (los hilos tendrán un tiempo determinado para contar las letras, si ese tiempo termina para el hilo, debe iniciar el otro). como ven tengo que leer del mismo texto utilizando 5 hilos y que den un mismo resultado pero cada uno tendrá un tiempo para que continué el otro.

alguien tiene una idea..
les agradezco su ayuda agrego el codigo que calcula las cantidad de letras





public class multihilos {
int a = 0;int b = 0;int c = 0;int d = 0;
int e = 0;int f = 0;int g = 0;int h = 0;
int i = 0;int j = 0;int k = 0;int l = 0;int m = 0;int n = 0;int ñ = 0;
int o = 0;int p = 0;int q = 0;int r = 0;int s = 0;int t = 0;
int u = 0;int v = 0;int w = 0;int x = 0;int y = 0;int z = 0;
String texto;
int tamaño=0;

multihilos(String texto)
{
this.texto=texto;
}

synchronized public void calculo(){

this.texto=texto;
this.tamaño = this.texto.length();
this.texto=this.texto.toUpperCase();

for (int sig = 0; sig < tamaño ; sig++)
{
switch(texto.charAt(sig))
{
case 'A':this.a++;break;
case 'B':this.b++;break;
case 'C':this.c++;break;
case 'D':this.d++;break;
case 'E':this.e++;break;
case 'F':this.f++;break;
case 'G':this.g++;break;
case 'H':this.h++;break;
case 'I':this.i++;break;
case 'J':this.j++;break;
case 'K':this.k++;break;
case 'L':this.l++;break;
case 'M':this.m++;break;
case 'N':this.n++;break;
case 'Ñ':this.ñ++;break;
case 'O':this.o++;break;
case 'P':this.p++;break;
case 'Q':this.q++;break;
case 'R':this.r++;break;
case 'S':this.s++;break;
case 'T':this.t++;break;
case 'U':this.u++;break;
case 'V':this.v++;break;
case 'W':this.w++;break;
case 'X':this.x++;break;
case 'Y':this.y++;break;
case 'Z':this.z++;break;

}
}

System.out.println("Cantidad de Letras!!!");
if (this.a != 0){System.out.println("Cantidad de A......" + this.a);}
if (this.b != 0){System.out.println("Cantidad de B......" + this.b);}
if (this.c != 0){System.out.println("Cantidad de C......" + this.c);}
if (this.d != 0){System.out.println("Cantidad de D......" + this.d);}
if (this.e != 0){System.out.println("Cantidad de E......" + this.e);}
if (this.f != 0){System.out.println("Cantidad de F......" + this.f);}
if (this.g != 0){System.out.println("Cantidad de G......" + this.g);}
if (this.h != 0){System.out.println("Cantidad de H......" + this.h);}
if (this.i != 0){System.out.println("Cantidad de I......" + this.i);}
if (this.j != 0){System.out.println("Cantidad de J......" + this.j);}
if (this.k != 0){System.out.println("Cantidad de K......" + this.k);}
if (this.l != 0){System.out.println("Cantidad de L......" + this.l);}
if (this.m != 0){System.out.println("Cantidad de M......" + this.m);}
if (this.n != 0){System.out.println("Cantidad de N......" + this.n);}
if (this.ñ != 0){System.out.println("Cantidad de Ñ......" + this.ñ);}
if (this.o != 0){System.out.println("Cantidad de O......" + this.o);}
if (this.p != 0){System.out.println("Cantidad de P......" + this.p);}
if (this.q != 0){System.out.println("Cantidad de Q......" + this.q);}
if (this.r != 0){System.out.println("Cantidad de R......" + this.r);}
if (this.s != 0){System.out.println("Cantidad de S......" + this.s);}
if (this.t != 0){System.out.println("Cantidad de T......" + this.t);}
if (this.u != 0){System.out.println("Cantidad de U......" + this.u);}
if (this.v != 0){System.out.println("Cantidad de V......" + this.v);}
if (this.w != 0){System.out.println("Cantidad de W......" + this.w);}
if (this.x != 0){System.out.println("Cantidad de X......" + this.x);}
if (this.y != 0){System.out.println("Cantidad de Y......" + this.y);}
if (this.z != 0){System.out.println("Cantidad de Z......" + this.z);}

}
}

chuidiang
20 de Abril del 2008
Hola:

Aquí tienes algo sobre hilos http://www.chuidiang.com/java/hilos/hilos_java.php

Se bueno