| ²é¿´: 399 | »Ø¸´: 2 | ||
| ±¾Ìû²úÉú 1 ¸ö ³ÌÐòÇ¿Ìû £¬µã»÷ÕâÀï½øÐв鿴 | ||
sangzhipei1178гæ (СÓÐÃûÆø)
|
[ÇóÖú]
Óûº³åÇøÊµÏÖÏû·ÑÕß»úÖÆ
|
|
| Óûº³åÇøÊµÏÖÉú²úÕßÏû·ÑÕßÎÊÌâ,ÉèÖÃÒ»¸ö»º³åÇø È»ºóÉú²úÕßÉú²úµÄÎïÆ··Å½øÈ¥ ÔÙÓÉÏû·ÑÕß´Ó»º³åÇøÖÐÈ¡×ß,Èç¹û»º³åÇøÎª¿ÕÔòÏû·ÑÕß½ø³Ì×èÈû µÈ´ý ÓÉÉú²úÕßÉú²úºó »º³åÇø²»Îª¿Õ ²Å¿ÉÈ¡×ß,Èô»º³åÇøÒÑÂú ÔòÉú²ú½ø³Ì×èÈûµÈ´ý.ÒªÒ»¸ö¿ÉÒÔÔËÐеÄjava³ÌÐò |
» ²ÂÄãϲ»¶
Ò»Ö¾Ô¸±±Àí¹¤298Ó¢Ò»Êý¶þÇóµ÷¼Á
ÒѾÓÐ15È˻ظ´
291 Çóµ÷¼Á
ÒѾÓÐ27È˻ظ´
307Çóµ÷¼Á
ÒѾÓÐ7È˻ظ´
²ÄÁÏÓ뻯¹¤µ÷¼Á
ÒѾÓÐ9È˻ظ´
µ÷¼Á
ÒѾÓÐ18È˻ظ´
²ÄÁÏרҵ344Çóµ÷¼Á
ÒѾÓÐ20È˻ظ´
Çóµ÷¼Á
ÒѾÓÐ5È˻ظ´
362Çóµ÷¼Á
ÒѾÓÐ14È˻ظ´
0856ר˶Çóµ÷¼Á Ï£ÍûÊÇaÇøÔºÐ£
ÒѾÓÐ24È˻ظ´
²ÄÁÏÓ뻯¹¤300Çóµ÷¼Á
ÒѾÓÐ34È˻ظ´

qqhegg
ÈÙÓþ°æÖ÷ (ÎÄ̳¾«Ó¢)
ɺº÷СÃÀ-----СԪ¼ÒµÄ¾ÅÃÃ
- ³ÌÐòÇ¿Ìû: 2
- Ó¦Öú: 10 (Ó×¶ùÔ°)
- ¹ó±ö: 3.115
- ½ð±Ò: 23915.9
- É¢½ð: 14806
- ºì»¨: 179
- ɳ·¢: 138
- Ìû×Ó: 11542
- ÔÚÏß: 770.7Сʱ
- ³æºÅ: 1212338
- ×¢²á: 2011-02-24
- ÐÔ±ð: MM
- ¹ÜϽ: »ù½ðÉêÇë½»Á÷
¡¾´ð°¸¡¿Ó¦Öú»ØÌû
¡ï ¡ï
¸Ðл²ÎÓ룬ӦÖúÖ¸Êý +1
΢³¾¡¢ÃÎÏë(½ð±Ò+2, ³ÌÐòÇ¿Ìû+1): ºÃ¾Ã²»¼û£¬ÓÐÐÄÁË£¬×£ºÃ~ 2011-12-16 12:13:49
sangzhipei1178(½ð±Ò+70): xiexie 2011-12-19 23:43:25
¸Ðл²ÎÓ룬ӦÖúÖ¸Êý +1
΢³¾¡¢ÃÎÏë(½ð±Ò+2, ³ÌÐòÇ¿Ìû+1): ºÃ¾Ã²»¼û£¬ÓÐÐÄÁË£¬×£ºÃ~ 2011-12-16 12:13:49
sangzhipei1178(½ð±Ò+70): xiexie 2011-12-19 23:43:25
|
¿´Ò»Ï¿ɲ»¿ÉÒÔ£¬ÕÒÈ˰ïÄãдµÄºÇºÇºÇ package thread; class ShareData { private char c; private boolean isProduced = false; // ÐźÅÁ¿ public synchronized void putShareChar(char c) // ͬ²½·½·¨putShareChar() { if (isProduced) // Èç¹û²úÆ·»¹Î´Ïû·Ñ£¬ÔòÉú²úÕߵȴý { try { wait(); // Éú²úÕߵȴý }catch(InterruptedException e){ e.printStackTrace(); } } this.c = c; isProduced = true; // ±ê¼ÇÒѾÉú²ú notify(); // ֪ͨÏû·ÑÕßÒѾÉú²ú£¬¿ÉÒÔÏû·Ñ } public synchronized char getShareChar() // ͬ²½·½·¨getShareChar() { if (!isProduced) // Èç¹û²úÆ·»¹Î´Éú²ú£¬ÔòÏû·ÑÕߵȴý { try { wait(); // Ïû·ÑÕߵȴý }catch(InterruptedException e){ e.printStackTrace(); } } isProduced = false; // ±ê¼ÇÒѾÏû·Ñ notify(); // ֪ͨÐèÒªÉú²ú return this.c; } } class Producer extends Thread // Éú²úÕßÏß³Ì { private ShareData s; Producer(ShareData s) { this.s = s; } public void run() { for (char ch = 'A'; ch <= 'D'; ch++) { try { Thread.sleep((int)(Math.random()*3000)); }catch(InterruptedException e){ e.printStackTrace(); } s.putShareChar(ch); // ½«²úÆ··ÅÈë²Ö¿â System.out.println(ch + " is produced by Producer." ; } } } class Consumer extends Thread // Ïû·ÑÕßÏß³Ì { private ShareData s; Consumer(ShareData s) { this.s = s; } public void run() { char ch; do{ try { Thread.sleep((int)(Math.random()*3000)); }catch(InterruptedException e){ e.printStackTrace(); } ch = s.getShareChar(); // ´Ó²Ö¿âÖÐÈ¡³ö²úÆ· System.out.println(ch + " is consumed by Consumer. " ; }while (ch != 'D'); } } public class CommunicationDemo { public static void main(String[] args) { ShareData s = new ShareData(); new Consumer(s).start(); new Producer(s).start(); } } |

3Â¥2011-12-16 11:11:29
ÎÄ¿¡µãµã
ľ³æ (ÖøÃûдÊÖ)
- Ó¦Öú: 30 (СѧÉú)
- ½ð±Ò: 2529.5
- É¢½ð: 1796
- ºì»¨: 1
- Ìû×Ó: 1151
- ÔÚÏß: 500.1Сʱ
- ³æºÅ: 1219128
- ×¢²á: 2011-03-02
- ÐÔ±ð: GG
- רҵ: ÎÄÒÕÃÀѧ

2Â¥2011-12-15 08:39:47













»Ø¸´´ËÂ¥
;