Java Threads (Hilos en Java) - Universidad de Salamanca
Java Threads (Hilos en Java) - Universidad de Salamanca
Java Threads (Hilos en Java) - Universidad de Salamanca
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
<strong>Java</strong> <strong>Threads</strong> (<strong>Hilos</strong> <strong>en</strong> <strong>Java</strong>)<br />
bajo = new Contar( 200 );<br />
// El otro comi<strong>en</strong>za <strong>de</strong>s<strong>de</strong> cero<br />
alto = new Contar( 0 );<br />
// Al que comi<strong>en</strong>za <strong>en</strong> 200 le asignamos prioridad mínima<br />
bajo.setPriority( Thread.MIN_PRIORITY );<br />
// Y al otro máxima<br />
alto.setPriority( Thread.MAX_PRIORITY );<br />
System.out.println( "Prioridad alta es<br />
"+alto.getPriority() );<br />
System.out.println( "Prioridad baja es<br />
"+bajo.getPriority() );<br />
}<br />
// Arrancamos los dos threads, y vamos repintando hasta que<br />
//el thread que ti<strong>en</strong>e prioridad más alta alcanza o supera al<br />
//que ti<strong>en</strong>e prioridad más baja, pero empezó a contar más<br />
//alto<br />
public void start() {<br />
bajo.start();<br />
alto.start();<br />
while( alto.getContar() < bajo.getContar() )<br />
repaint();<br />
repaint();<br />
bajo.stop();<br />
alto.stop();<br />
}<br />
// Vamos pintando los increm<strong>en</strong>tos que realizan ambos threads<br />
public void paint( Graphics g ) {<br />
g.drawString( "bajo = "+bajo.getContar()+<br />
" alto = "+alto.getContar(),10,10 );<br />
System.out.println( "bajo = "+bajo.getContar()+<br />
" alto = "+alto.getContar() );<br />
}<br />
// Para parar la ejecución <strong>de</strong> los threads<br />
public void stop() {<br />
bajo.stop();<br />
alto.stop();<br />
}<br />
}<br />
16