Active Object ãã¿ã¼ã³ (社å åå¼·ä¼çºè¡¨è³æ)
å¤ãå
ã§ã増補改訂版Java言語で学ぶデザインパターン入門 マルチスレッド編ãã®èªæ¸ä¼ãå®æ½ãã¦ãããç§ã¯ç¬¬ 12 ç« ã® Active Object ãã¿ã¼ã³ãæ
å½ãã¾ããã
æç§æ¸ã®ãµã³ãã«ããã°ã©ã ãé¡æã« Active Object ãã¿ã¼ã³ã«ã¤ãã¦èª¬æããã»ãã以ä¸ã®è©±é¡ã«ã¤ãã¦ãè°è«ãã¾ãããããããå«ãå®è£ ä¾ã GitHub ã§å ¬éãã¦ãã¾ã (https://github.com/y-uti/dpmt-java)ã
- ã¹ã±ã¸ã¥ã¼ã©ã«ããå®è¡ç®¡çãä¸è¦ãªã±ã¼ã¹
- å®è¡é åºã®æ±ºå®ã«ã¬ã¼ãæ¡ä»¶ãç¨ããã±ã¼ã¹
- java.util.concurrent ããã±ã¼ã¸ãæä¾ããæ©è½ã®æ¨¡å£
æç§æ¸å ¨ä½ãèªã¿éããæ ¼å¥½ã«ãªãã¾ããããå ¨ä½ã¨ãã¦ãç¾å¨ async/await ãªã©ã®å½¢ã§æä¾ãããéåæå¦çã®è£å´ãããç解ã§ããå 容ã§ããã2006 å¹´çºè¡ã®å¤ãæç§æ¸ã§ããã Thread ã¯ã©ã¹ãç´æ¥å©ç¨ãã説æãä¸å¿ã§ãã*1ããããã£ã説æã®ãããã§ãåºæ¬çãªé¨åãå©ç¨ãã¦éåæå¦çã®æ çµã¿ãçµã¿ç«ã¦ã¦ããæ§åãåãããããå¦ã¹ã¾ãããã¾ãèªæ¸ä¼ã¨ãã¦ã¯ããä»ãªãããæ¸ãããââè¨èªãªãããæ¸ããã¨ããè°è«ã«çºå±ãããã¨ãå¤ããããã¯æããããªãå¯ç£ç©ã§ããã
æç§æ¸ã®å 容ã§å°ãç©è¶³ããªãã£ãã®ã¯ãåç« ãä½ã«é¢ãããã¿ã¼ã³ãªã®ãã¨ããæ´çãæ示çã«ã¯ããã¦ããªãã¨ããã§ãããã«ãã¹ã¬ããããã°ã©ãã³ã°ã§ã®é¢å¿äºã«ã¯ãæä»å¶å¾¡ãã¹ã¬ãã管çæ¹å¼ (ã¹ã¬ããã®çæãç ´æ£)ãã¹ã¬ããéã§ã®ãã¼ã¿éåä¿¡ããªã©ãããããã§ããããã®ãããªè¦³ç¹ãããããããã®ãã¿ã¼ã³ãããä¸ã¤å¤§ããªåé¡ã§æ´çãã¦ã¿ãã¨ãããç解ãæ·±ã¾ãããã§ã*2ã
*1:åç« ã«ãè£è¬ãã¨ãã¦ãjava.util.concurrent ããã±ã¼ã¸ã使ã£ã¦åçã®å 容ãããæ½è±¡çã«å®ç¾ããã³ã¼ãã示ããã¦ãã¾ãã
*2:åãèè ã®ã増補改訂版Java言語で学ぶデザインパターン入門ãã§ãã大æ ã¨ãã¦ã®åãã¿ã¼ã³ã®åé¡ãä½ç½®ä»ããããããµã³ãã«ããã°ã©ã ãéãã¦ä¸ã¤ä¸ã¤ã®ãã¿ã¼ã³ãå ·ä½çã«ç解ãããã¨ãéè¦ãã¦ããå°è±¡ãããã¾ãããã®ãããªæå³ã§æ¸ããã¦ããã®ãã¨ãæãã¾ãã