ÉèΪÊ×Ò³ ¼ÓÈëÊÕ²Ø

TOP

Java±à³ÌÃæÊÔÌâ1
2014-11-24 01:35:01 ¡¾´ó ÖРС¡¿ ä¯ÀÀ:6996´Î
Tags£ºJava ±à³Ì ÊÔÌâ

Éè¼ÆÁ½¸öÏß³ÌÀ࣬һ¸öÏß³ÌÀฺÔð´òÓ¡100ÒÔÄÚËùÓеÄżÊý£¬ÁíÒ»¸öÏ̴߳òÓ¡100ÒÔÄÚËùÓеÄÆæÊý¡£ÒªÇóżÊýÏß³Ìÿ´òÓ¡10¸öżÊýÒԺ󣬾ÍÈÃÆæÊýÏ̴߳òÓ¡10¸öÆæÊý£¬Èç´Ë½»Ìæ½øÐС£


public class printThread extends Thread {


public static void main(String[] args) throws Exception {
CyclicBarrier barrier = new CyclicBarrier(2);
new printThread(barrier,true, 0).start();
new printThread(barrier,false, 1).start();
}


int numberic;
boolean isEven;
private CyclicBarrier barrier;
public printThread(CyclicBarrier barrier,boolean isEven, int numberic) {
this.barrier = barrier;
this.isEven = isEven; //true,Ë«Êý´òÓ¡;false,µ¥Êý´òÓ¡
this.numberic = numberic;//´Óʲôֵ£¬¿ªÊ¼Á¬Ðø´òÓ¡50¸öË«£¨µ¥£©Êý
}
public synchronized int printNumberic(int numberic) {
int count = 0;
if (isEven) {
System.out.print(¡°Ê®¸öżÊýÊÇ:¡±);
} else {
System.out.print(¡°Ê®¸öÆæÊýÊÇ:¡±);
}
while (count < 10) {
System.out.print(numberic + ¡°,¡±);
numberic = numberic + 2;
count = count + 1;
}
return numberic;
}
public void run() {
try {
while (numberic < 100) {
if (!isEven){
sleep(2000);//ÏÈ´òÓ¡Ë«Êý£¬ÀûÓÃsleep()×ö³öʱ¼ä¼ä¸ô£¬ºó´òÓ¡µ¥Êý
}else{
sleep(1000);//ΪÑÝʾЧ¹û£¬¿ØÖÆ´òÓ¡Ë«ÊýµÄʱ¼ä¼ä¸ô
}
numberic = this.printNumberic(numberic);
System.out.println();
barrier.await();//ʹÓÃbarrier±£Ö¤Ã¿´òÓ¡Ò»×éË«ÊýºÍÒ»×éµ¥Êýºó£¬¼ÌÐøµÝÔöʽ´òÓ¡
}
} catch (Exception ex) {
ex.printStackTrace();
}
}
}


¡¾´ó ÖРС¡¿¡¾´òÓ¡¡¿ ¡¾·±Ìå¡¿¡¾Í¶¸å¡¿¡¾Êղء¿ ¡¾ÍƼö¡¿¡¾¾Ù±¨¡¿¡¾ÆÀÂÛ¡¿ ¡¾¹Ø±Õ¡¿ ¡¾·µ»Ø¶¥²¿¡¿
ÉÏһƪ£º¹ãÖÝ-Æ·¸ßÈí¼þ£¨.net£© ÏÂһƪ£º´òÓ¡10¸öżÊýÈ»ºóÔÙ´òÓ¡10¸öÆæÊý

×îÐÂÎÄÕÂ

ÈÈÃÅÎÄÕÂ

Hot ÎÄÕÂ

Python

C ÓïÑÔ

C++»ù´¡

´óÊý¾Ý»ù´¡

linux±à³Ì»ù´¡

C/C++ÃæÊÔÌâÄ¿