JavaÏß³ÌÖ®Producer
Producer-Consumer PatternµÄ²ÎÓëÕߣº
1. Data²ÎÓëÕß
±»Producer²ÎÓëÕßËù´´½¨£¬²¢ÓÉConsumer²ÎÓëÕßËùʹÓá£
2. Producer£¨Éú²úÕߣ©²ÎÓëÕß
´´½¨Data²ÎÓëÕߣ¬²¢½«Æä´«µÝ¸øChannel²ÎÓëÕß¡£
3. Consumer£¨Ïû·ÑÕߣ©²ÎÓëÕß
´ÓChannel²ÎÓëÕß»ñÈ¡Data²ÎÓëÕß¡£
4. Channel£¨Í¨µÀ£©²ÎÓëÕß
Channel²ÎÓëÕß´ÓProducer²ÎÓëÕß´¦½ÓÊÕData²ÎÓëÕߣ¬²¢½«Æä±£¹ÜÆðÀ´¡£²¢Ó¦Consumer²ÎÓëÕßµÄÒªÇ󣬽«Data²ÎÓëÕß´«ËͳöÈ¥¡£
ΪÁËÈ·±£°²È«ÐÔ£¬Producer²ÎÓëÕßÓëConsumer²ÎÓëÕßÒª¶Ô·ÃÎʽøÐй²ÏíÅų⡣
ÔÚProducer-Consumer PatternÖУ¬¼ç¸º±£»¤°²È«ÐÔʹÃüµÄÊÇChannel²ÎÓëÕß¡£Channel²ÎÓëÕß½øÐÐÏß³ÌÖ®¼äµÄ¹²Ïí»¥³â£¬ÈÃProducer²ÎÓëÕßÄܹ»ÕýÈ·µÄ½«Data²ÎÓëÕßË͵½Consumer²ÎÓëÕßÊÖÉÏ¡£
ÕâÀËäÈ»·ÖÀëÁËProducerºÍConsumerÖ®¼äµÄ½»»¥£¬Producer²ÎÓëÕß²»ÐèÒªµÈConsumer²ÎÓëÕß´¦ÀíÍêData£¬¾Í¿ÉÒÔ¼ÌÐøÈ¥ÖÆÔìÏÂÒ»¸öData£¬Channel²ÎÓëÕß×÷ΪProducerºÍConsumerÖ®¼äµÄ»º³åÇø¡£µ«ÊÇChannel²ÎÓëÕßµÄÈÝÁ¿Ò²ÊÇÓÐÏ޵ģ¬Ò²¾ÍÊÇ˵£¬µ±ConsumerÏû·ÑDataµÄËÙ¶ÈСÓÚProducerÖÆÔìDataµÄËÙ¶Èʱ£¬ChannelÖеÄDataÊýÁ¿»á³ÖÐøÔö¼Ó¡£ÕâÀïÐèÒª¶ÔChannelµÄÈÝÁ¿¼ÓÒÔ¿ØÖÆ£¬·ñÔò¿ÉÄÜ»á×îºóÒòΪÄÚ´æ²»×ã¶øÊ¹µÃProducerÖÆÔì²»³öData¡£¶ÔÓÚProducer²ÎÓëÕßÀ´Ëµ£¬ÔÚChannelÈÝÁ¿²»×ãµÄÇé¿öÏ£¬ÒªÓèÒԵȴý¡£
ÒýÉ꣺
1. ÒòΪChannel²ÎÓëÕßµÄÖн飬ʹµÃProducerºÍConsumerµÄ¶àÌõÏß³Ìе÷ºÏ×÷¡£
Ïß³ÌΪÁËе÷ºÏ×÷£¬ËùÒÔ±ØÐë½øÐй²Ïí»¥³â£¬Ê¹¹²ÏíµÄ¶«Î÷²»±»Ë𻵡£¶øÏ̵߳Ĺ²Ïí»¥³â£¬¾ÍÊÇΪÁËÈÃÏà´¦ºÏ×÷²Å½øÐеġ£
Ï̵߳ĺÏ×÷ÒªÏë“·ÅÔÚÖмäµÄ¶«Î÷”£¬Ï̵߳Ļ¥³âÒªÏë“Ó¦¸Ã±£»¤µÄ¶«Î÷”
2. ÒòΪChannel²ÎÓëÕßµÄÖн飬¿ÉÒÔʹProducerÖÆÔì³öÀ´µÄ¶à¸öDataÒÔ²»Í¬µÄ˳Ðò´«µÝ¸øConsumer¡£
³£¼ûµÄ´«µÝ»úÖÆÓУº
-- ¶ÓÁУ¬ ×îÏÈÊÕµ½µÄÏÈ´«
-- ¶ÑÕ»£¬ ×îºóÊÕµ½µÄÏÈ´«
-- ÓÅÏȶÓÁУ¬ “ÓÅÏÈ”µÄ¶«Î÷ÏÈ´«
Ïà¹ØÎĵµ£º
ÕâÊÇÒ»¸öC/SÖ®¼äͨÐŵÄÀý×Ó,ÔÚJDK1.4ϲâÊÔͨ¹ý.
//·þÎñÆ÷¶ËÔ´³ÌÐòtcpserver.java
import java.io.*;
import java.net.*;
public class tcpserver
{
public static void main(String[] args) throws IOException
{
......
1¡¢½ø³ÌÓëỊ̈߳º
¡¶1¡·Ê²Ã´Êǽø³Ì£ºÊÇÖ¸ÔËÐÐÖеÄÓ¦ÓóÌÐò£¬Ã¿Ò»¸ö½ø³Ì¶¼ÓÐ×Ô¼º¶ÀÁ¢µÄÄÚ´æ¿Õ¼ä£¬
Ò»¸öÓ¦ÓóÌÐò¿ÉÒÔͬʱÆô¶¯¶à¸ö½ø³Ì£¬(¾²Ì¬)±ÈÈ磨IE£¬JVM£©
¡¶2¡·Ê²Ã´ÊÇỊ̈߳ºÊÇÖ¸½ø³ÌÖеÄÒ»¸öÖ´ÐÐÁ÷³Ì£¬ ......
ת×Ôhttp://www.cnblogs.com/liwp_stephen/archive/2008/08/03/1259385.html£¬·Ç³£¸Ðл×÷ÕߵķÖÏí
ʹÓÃAxis±àдWebService±È½Ï¼òµ¥£¬¾ÍÎÒµÄÀí½â£¬WebServiceµÄʵÏÖ´úÂëºÍ±àдJava´úÂëÆäʵûÓÐÊ²Ã´Çø±ð£¬Ö÷ÒªÊǽ«ÄÄЩJavaÀà·¢²¼ÎªWebService¡£ÏÂÃæÊÇÒ»¸ö´Ó±àд²âÊÔÀý× ......
ÔÚ¿´µ½Thinking in java µÚËÄÕÂʱ³õʼ»¯Ïà¹ØÎÊÌâµÄʱºò£¬ÎÒÃDz»ÓɵذÑ×¢ÒâÁ¦ÒƵ½¹¹ÔìÆ÷ÉÏ¡£ÕâÀï×ö¸ö¼òµ¥µÄ×ܽᣬ±ãÓÚ¸ßÊÖÖ¸ÕýÒÔ¼°×Ô¼ºÎ¹ʡ£
Ê×Ïȹ¹ÔìÆ÷ÊÇÒª¹¹ÔìÒ»¸ö¶«Î÷{¹¹Ôì¶ÔÏó£¨ÊµÀý£©}²¢¶ÔÆä³õʼ»¯¡£Ö®ËùÒÔ ......
±¾ÎÄÕë¶Ôjdk6.0ÖÐjava.lang.ClassÀàµÄAPI½øÐÐÁ˼òµ¥µÄʵÀýÓ¦Óã¬Àý×Ó¼òµ¥Ò×¶®£¬±È½ÏÊʺÏÈëÃż¶ÔĶÁ¡£
ʵÀý¼ò½é£º
/*
*IncludeInnerClassÀàÖаüº¬ÁËÈýÖÖ·ÃÎÊ¿ØÖƵÄÄÚ²¿À࣬²¢ÇÒÒÔÕâÈý¸öÄÚ²¿ÀàµÄÒýÓöÔÏóºÍÒ»¸öÕûÐÍÊý×÷ΪÊôÐÔ£¬ÔÚÍⲿÀàµÄ·½·¨Öзֱðµ÷ÓÃÁË ÄÚ²¿ÀàµÄ·½·¨
*ÍⲿÀàÓÐÁ½¸ö¹¹Ôì·½·¨£¬ ......