ÓÃJavaʵÏÖ·Ç×èÈûͨÐÅ
ÓÃServerSocketºÍSocketÀ´±àд·þÎñÆ÷³ÌÐòºÍ¿Í»§³ÌÐò£¬ÊÇJavaÍøÂç±à³ÌµÄ×î»ù±¾µÄ·½Ê½¡£ÕâЩ·þÎñÆ÷³ÌÐò»ò¿Í»§³ÌÐòÔÚÔËÐйý³ÌÖг£³£»á×èÈû¡£ÀýÈçµ±Ò»¸öÏß³ÌÖ´ÐÐServerSocketµÄaccept()·½·¨Ê±£¬¼ÙÈçûÓпͻ§Á¬½Ó£¬¸ÃÏ߳̾ͻáÒ»Ö±µÈµ½ÓÐÁË¿Í»§Á¬½Ó²Å´Óaccept()·½·¨·µ»Ø¡£ÔÙÀýÈçµ±Ïß³ÌÖ´ÐÐSocketµÄread()·½·¨Ê±£¬Èç¹ûÊäÈëÁ÷ÖÐûÓÐÊý¾Ý£¬¸ÃÏ߳̾ͻáÒ»Ö±µÈµ½¶ÁÈëÁË×ã¹»µÄÊý¾Ý²Å´Óread()·½·¨·µ»Ø¡£
¼ÙÈç·þÎñÆ÷³ÌÐòÐèҪͬʱÓë¶à¸ö¿Í»§Í¨ÐÅ£¬¾Í±ØÐë·ÖÅä¶à¸ö¹¤×÷Ị̈߳¬ÈÃËüÃÇ·Ö±ð¸ºÔðÓëÒ»¸ö¿Í»§Í¨ÐÅ£¬µ±È»Ã¿¸ö¹¤×÷Ï̶߳¼ÓпÉÄܾ³£´¦ÓÚ³¤Ê±¼äµÄ×èÈû״̬¡£
´ÓJDK1.4°æ±¾¿ªÊ¼£¬ÒýÈëÁË·Ç×èÈûµÄͨÐÅ»úÖÆ¡£·þÎñÆ÷³ÌÐò½ÓÊÕ¿Í»§Á¬½Ó¡¢¿Í»§³ÌÐò½¨Á¢Óë·þÎñÆ÷µÄÁ¬½Ó£¬ÒÔ¼°·þÎñÆ÷³ÌÐòºÍ¿Í»§³ÌÐòÊÕ·¢Êý¾ÝµÄ²Ù×÷¶¼¿ÉÒÔ°´·Ç×èÈûµÄ·½Ê½½øÐС£·þÎñÆ÷³ÌÐòÖ»ÐèÒª´´½¨Ò»¸öỊ̈߳¬¾ÍÄÜÍê³ÉͬʱÓë¶à¸ö¿Í»§Í¨ÐŵÄÈÎÎñ¡£
·Ç×èÈûµÄͨÐÅ»úÖÆÖ÷ÒªÓÉjava.nio°ü£¨ÐÂI/O°ü£©ÖеÄÀàʵÏÖ£¬Ö÷ÒªµÄÀà°üÀ¨ServerSocketChannel¡¢SocketChannel¡¢Selector¡¢SelectionKeyºÍByteBufferµÈ¡£
Ò»¡¢Ïß³Ì×èÈû
ÔÚÉú»îÖУ¬×î³£¼ûµÄ×èÈûÏÖÏóÊǹ«Â·ÉÏÆû³µµÄ¶ÂÈû¡£Æû³µÔÚ¹«Â·ÉÏ¿ìËÙÔËÐУ¬Èç¹ûÇ°·½½»Í¨ÊÜ×裬¾ÍÖ»ºÃÍ£ÏÂÀ´µÈ´ý£¬µÈµ½¹«Â·Ë³³©£¬²ÅÄָܻ´ÔËÐС£
Ïß³ÌÔÚÔËÐÐÖÐÒ²»áÒòΪijЩÔÒò¶ø×èÈû¡£ËùÓд¦ÓÚ×èÈû״̬µÄÏ̵߳Ĺ²Í¬ÌØÕ÷ÊÇ£º·ÅÆúCPU£¬ÔÝÍ£ÔËÐУ¬Ö»Óеȵ½µ¼ÖÂ×èÈûµÄÔÒòÏû³ý£¬²ÅÄָܻ´ÔËÐУ»»òÕß±»ÆäËûÏß³ÌÖжϣ¬¸ÃÏ̻߳áÍ˳ö×èÈû״̬£¬²¢ÇÒÅ׳öInterruptedException¡£
1£®Ïß³Ì×èÈûµÄÔÒò
µ¼ÖÂÏß³Ì×èÈûµÄÔÒòÖ÷ÒªÓÐÒÔÏ·½Ã棺
Ïß³ÌÖ´ÐÐÁËThread.sleep(int n)·½·¨£¬Ï̷߳ÅÆúCPU£¬Ë¯ÃßnºÁÃ룬Ȼºó»Ö¸´ÔËÐС£
Ïß³ÌÒªÖ´ÐÐÒ»¶Îͬ²½´úÂ룬ÓÉÓÚÎÞ·¨»ñµÃÏà¹ØµÄͬ²½Ëø£¬Ö»ºÃ½øÈë×èÈû״̬£¬µÈµ½»ñµÃÁËͬ²½Ëø£¬²ÅÄָܻ´ÔËÐС£
Ïß³ÌÖ´ÐÐÁËÒ»¸ö¶ÔÏóµÄwait()·½·¨£¬½øÈë×èÈû״̬£¬Ö»Óеȵ½ÆäËûÏß³ÌÖ´ÐÐÁ˸öÔÏóµÄnotify()»ònotifyAll()·½·¨£¬²Å¿ÉÄܽ«Æ份ÐÑ¡£
Ïß³ÌÖ´ÐÐI/O²Ù×÷»ò½øÐÐÔ¶³ÌͨÐÅʱ£¬»áÒòΪµÈ´ýÏà¹ØµÄ×ÊÔ´¶ø½øÈë×èÈû״̬¡£ÀýÈçµ±Ïß³ÌÖ´ÐÐSystem.in.read()·½·¨Ê±£¬Èç¹ûÓû§Ã»ÓÐÏò¿ØÖÆ̨ÊäÈëÊý¾Ý£¬Ôò¸ÃÏ̻߳áÒ»Ö±µÈ¶Áµ½ÁËÓû§µÄÊäÈëÊý¾Ý²Å´Óread()·½·¨·µ»Ø¡£
½øÐÐÔ¶³ÌͨÐÅʱ£¬ÔÚ¿Í»§³ÌÐòÖУ¬Ïß³ÌÔÚÒÔÏÂÇé¿ö¿ÉÄܽøÈë×èÈû״̬£º
ÇëÇóÓë·þÎñÆ÷½¨Á¢Á¬½Óʱ£¬¼´µ±Ïß³ÌÖ´ÐÐSocketµÄ´ø²ÎÊýµÄ¹¹Ôì·½·¨£¬»òÖ´ÐÐSocketµÄconnect()·½·¨Ê±£¬»á½øÈë×èÈû״̬£¬Ö±µ½Á¬½Ó³É¹¦£¬´ËÏ̲߳ŴÓSocketµÄ¹¹Ôì·½·¨»òconnect()
Ïà¹ØÎĵµ£º
ListµÄÓ÷¨
List°üÀ¨List½Ó¿ÚÒÔ¼°List½Ó¿ÚµÄËùÓÐʵÏÖÀà¡£ÒòΪList½Ó¿ÚʵÏÖÁËCollection½Ó¿Ú£¬ËùÒÔList½Ó¿ÚÓµÓÐCollection½Ó¿ÚÌṩµÄËùÓг£Ó÷½·¨£¬ÓÖÒòΪListÊÇÁбíÀàÐÍ£¬ËùÒÔList½Ó¿Ú»¹ÌṩÁËһЩÊʺÏÓÚ×ÔÉíµÄ³£Ó÷½·¨£¬Èç±í1Ëùʾ¡£
±í1 List½Ó¿Ú¶¨ÒåµÄ³£Ó÷½·¨¼°¹¦ÄÜ
´Ó±í1¿ÉÒÔ¿´³ö£¬List½Ó¿ÚÌṩµÄÊʺÏÓÚ×ÔÉíµÄ ......
Ôڳɹ¦ÊµÏÖJavaµ÷ÓÃC++Ö®ºó£¬½ÓÏÂÀ´Ïëµ½ÄÜ·ñͨ¹ýJNAʵÏÖJavaµ÷ÓÃFortran£¬½ñÌìÊÔÑéÁËһϣ¬»¹ÊDZȽÏÈÝÒ׵ġ£
ÍøÉÏÓÐÒ»¸öJavaµ÷ÓÃF95µÄÀý×Ó£¬µ«ÊÇÎÒ¿¼ÂDz»½öҪʵÏÖF95µÄµ÷Ó㬻¹ÒªÊµÏÖF77µÄµ÷Óã¬ËùÒÔ·ÑÁËһЩÖÜÕÛ¡£
ÎÊÌâµÄ¹Ø¼üÔÚÓÚF77Ϊ¹ý³ÌÃû×Ô¶¯Ìí¼ÓÁËÒ»¸öβ²¿µÄÏ»®Ïߣ¬ËùÒÔsub1Õâ¸ö¹ý³Ì£¬µ½JavaÒ»¶Ë£¬¾Í±ä³ÉÁËsub1_£¬ ......
class User {
String name;
String age;
public User(String name,String age){
this.name=name;
this.age=age;
}
public String getAge() {
return age;
}
public void setAge(String age) {
this.age = age;
}
public String getName() {
return name;
}
public void setName(St ......
package¡¢import
µÄÏà¹ØÎÊÌâÊÇjavaÖеÄÒ»¸ö²»´ó²»Ð¡µÄÎÊÌ⣬µ«classpathÎÊÌâÈ´ÊÇjavaµÄÒ»¸öÖøÃûµÄÄÑÌâ¡£½ñÍíµÃÏÐÑо¿ÁËһϣ¬ÔÚÕâÀォÎÒµÄÑо¿³É¹û¸ú¸÷λ
ÅóÓÑ·ÖÏíһϡ£ÓÉÓÚͬ°üµÄÇé¿öºÜ¼òµ¥£¬ËùÒÔÕâÀï¾Í²»ÌÖÂÛͬ°üÇé¿ö£¬Ö»ÌÖÂÛ²»Í¬°üºÍ²»Í¬Â·¾¶µÄÇé¿ö¡£ÎªÁËÄÜÈöÁÕ߸üÈÝÒ×Àí½â£¬ÎÒÕâÀïÒÔ¾ÙÀýµÄ·½Ê½À´ËµÃ÷ÎÊ
Ìâ¡£
¡ ......
2008-04-26 09:25 ×÷Õߣºsuperman À´Ô´£ºÈüµÏÍø
[ÕªÒª] Ê×ÏÈ£¬±¾ÎĵÄÄ¿±ê¶ÁÕßÊÇÕýÔÚ´Óʼ¼Êõ¹¤×÷µÄ¼Ü¹¹Ê¦¡£±ÜÃâ½²ÊöһЩ³Â¸¯µÄ×î¼Ñʵ¼ù£¬ÀýÈç"ÈÕ³£¹¹½¨£¨build daily£©"¡¢"²âÊÔÒ»ÇУ¨test everything£©"ºÍ"¾³£¼¯³É£¨ integrate often£©¡£ ÈκξßÓгÆÖ°¼Ü¹¹Ê¦µÄÏîÄ¿¶¼Óзֹ¤Ã÷È·µÄ¡¢¶¨ÒåÁ¼ºÃµÄÍŶӽṹ¡£ËûÃÇ»¹Îª½øÐбà ......