Ò׽ؽØͼÈí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

¡¾×ª¡¿ÔÚJavaÖÐʹÓÃNIO½øÐÐÍøÂç±à³Ì

ÔÚJDKÖУ¬ÓÐÒ»¸ö·Ç³£ÓÐÒâ˼µÄ¿â£ºNIO£¨New I/O£©¡£Õâ¸ö¿âÖÐÓÐ3¸öÖØÒªµÄÀ࣬·Ö±ðÊÇjava.nio.channelsÖÐSelectorºÍChannel£¬ÒÔ¼°java.nioÖеÄBuffer¡£
±¾ÆªÎÄÕÂÎÒÃÇÊ×ÏÈÁ˽âÒ»ÏÂΪʲôÐèÒªNIOÀ´½øÐÐÍøÂç±à³Ì£¬È»ºó¿´¿´Ò»²½Ò»²½À´½²½âÈçºÎÔÚÍøÂç±à³ÌÖÐʹÓÃNIO¡£
ΪʲôÐèÒªNIO
ʹÓÃJava±àд¹ýSocket³ÌÐòµÄͬѧһ¶¨¶¼ÖªµÀSocketºÍSocketServer¡£µ±µ÷ÓÃij¸öµ÷ÓõÄʱºò£¬µ÷Óõĵط½¾Í»á×èÈû£¬µÈ´ýÏìÓ¦¡£ÕâÖÖ·½Ê½¶ÔÓÚС¹æÄ£µÄ³ÌÐò·Ç³£·½±ã£¬µ«ÊǶÔÓÚ´óÐ͵ijÌÐò¾ÍÓеãÁ¦²»´ÓÐÄÁË£¬µ±ÓдóÁ¿µÄÁ¬½ÓµÄʱºò£¬ÎÒÃÇ¿ÉÒÔΪÿһ¸öÁ¬½Ó½¨Á¢Ò»¸öÏß³ÌÀ´²Ù×÷¡£µ«ÊÇÕâÖÖ×ö·¨´øÀ´µÄȱÏÝÒ²ÊÇÏÔ¶øÒ×¼ûµÄ£º
Ó²¼þÄܹ»Ö§³Ö´óÁ¿µÄ²¢·¢¡£
²¢·¢µÄÊýÁ¿Ê¼ÖÕÓÐÒ»¸öÉÏÏÞ¡£
¸÷¸öÏß³ÌÖ®¼äµÄÓÅÏȼ¶²»ºÃ¿ØÖÆ¡£
¸÷¸öClientÖ®¼äµÄ½»»¥Óëͬ²½À§ÄÑ¡£
ÎÒÃÇÒ²¿ÉÒÔʹÓÃÒ»¸öÏß³ÌÀ´´¦ÀíËùÓеÄÇëÇó£¬Ê¹Óò»×èÈûµÄIO£¬ÂÖѯ²éѯËùÓеÄClient¡£ÕâÖÖ×ö·¨Í¬ÑùÒ²ÓÐȱÏÝ£ºÎÞ·¨Ñ¸ËÙÏìÓ¦Client¶Ë£¬Í¬Ê±»áÏûºÄ´óÁ¿ÂÖѯ²éѯµÄʱ¼ä¡£
ËùÒÔ£¬ÎÒÃÇÐèÒªÒ»ÖÖpollµÄģʽÀ´´¦ÀíÕâÖÖÇé¿ö£¬´Ó´óÁ¿µÄÍøÂçÁ¬½ÓÖÐÕÒ³öÀ´ÕæÕýÐèÒª·þÎñµÄClient¡£ÕâÕýÊÇNIOµ®ÉúµÄÔ­Òò£ºÌṩһÖÖPollµÄģʽ£¬ÔÚËùÓеÄClientÖÐÕÒµ½ÐèÒª·þÎñµÄClient¡£
»Øµ½ÎÒÃǸոÕ˵µ½µÄ3¸ö×î×îÖØÒªµÄClass£ºjava.nio.channelsÖÐSelectorºÍChannel£¬ÒÔ¼°java.nioÖеÄBuffer¡£
Channel´ú±íÒ»¸ö¿ÉÒÔ±»ÓÃÓÚPoll²Ù×÷µÄ¶ÔÏ󣨿ÉÒÔÊÇÎļþÁ÷Ò²¿ÉÒÔʹÍøÂçÁ÷£©£¬ChannelÄܹ»±»×¢²áµ½Ò»¸öSelectorÖС£Í¨¹ýµ÷ÓÃSelectorµÄselect·½·¨¿ÉÒÔ´ÓËùÓеÄChannelÖÐÕÒµ½ÐèÒª·þÎñµÄʵÀý£¨Accept£¬read ..£©¡£Buffer¶ÔÏóÌṩ¶ÁдÊý¾ÝµÄ»º´æ¡£Ïà¶ÔÓÚÎÒÃÇÊìϤµÄStream¶ÔÏó£¬BufferÌṩ¸üºÃµÄÐÔÄÜÒÔ¼°¸üºÃµÄ±à³Ì͸Ã÷ÐÔ£¨ÈËΪ¿ØÖÆ»º´æµÄ´óСÒÔ¼°¾ßÌåµÄ²Ù×÷£©¡£
ÅäºÏBufferʹÓÃChannel
Ó봫ͳģʽµÄ±à³Ì²»Óã¬Channel²»Ê¹ÓÃStream£¬¶øÊÇBuffer¡£ÎÒÃÇÀ´ÊµÏÖÒ»¸ö¼òµ¥µÄ·Ç×èÈûEcho Client£º
package com.cnblogs.gpcuster;
import java.net.InetSocketAddress;
import java.net.SocketException;
import java.nio.ByteBuffer;
import java.nio.channels.SocketChannel;
public class TCPEchoClientNonblocking {
 public static void main(String args[]) throws Exception {
  if ((args.length < 2) || (args.length > 3))// Testforcorrect#ofargs
   throw new IllegalArgumentException(
     "Param


Ïà¹ØÎĵµ£º

JavaÖÐbooleanÀàÐ͵ÄλÔËËã

    JavaÈÕ»ýÔÂÀÛ-1£ºJavaÖÐbooleanÀàÐ͵ÄλÔËËã
     1. Ê×ÏȻعËÒ»ÏÂjavaÖеÄ8Öлù±¾ÀàÐͼ°Æä´æ´¢ËùÕ¼ÓõÄbitÊý¡£
ÀàÐÍ
bitÊý
byte
8
short
16
int
32
float
32
long
64
double
64
char
16
boolean
1
     2. ÔٻعËÒ»ÏÂjavaµÄÔËËã·ûºÍÓÅÏȼ ......

»ùÓÚ JVMTI ʵÏÖ Java Ï̵߳ļà¿Ø

¼¶±ð£º Öм¶
Àî Áè
, Èí¼þ¼Ü¹¹Ê¦, IBM
2009 Äê 12 ÔÂ 10 ÈÕ
Ëæ
×ŶàºË CPU µÄÈÕÒæÆÕ¼°£¬Ô½À´Ô½¶àµÄ Java
Ó¦ÓóÌÐòʹÓöàÏ̲߳¢ÐмÆËãÀ´³ä·Ö·¢»ÓÕû¸öϵͳµÄÐÔÄÜ¡£¶àÏ̵߳ÄʹÓÃÒ²¸øÓ¦ÓóÌÐò¿ª·¢ÈËÔ±´øÀ´Á˾޴óµÄÌôÕ½£¬²»ÕýÈ·µØʹÓöàÏ߳̿ÉÄÜÔì³ÉÏß³ÌËÀËø»ò×ÊÔ´¾º
Õù£¬µ¼ÖÂϵͳ̱»¾¡£Òò´Ë£¬ÐèÒªÒ»ÖÖÔËÐÐʱÏ̼߳à¿Ø¹¤ ......

×¼±¸java×öÅ©³¡

ÄÇÌìÕý͵×ŲËͻȻ¾ÍÏëµ½ÁËΪºÎ²»×öÒ»¸öÅ©³¡ÄØ£¿
ÕýºÃ¸ÒÉϽá¿ÎÏîÄ¿¾ÍÒª¿ªÊ¼ÁË,ÀÏʦÓÖ´ß×ÅÕÒÏîÄ¿ÁË¡£
˵×ö¾Í×öÁË£¬
µ«´ÓÀ´Ã»ÓÐÉæ¼°¹ýÍøÒ³ÓÎÏ··½Ã棬Ȼºó·è¿ñ²é×ÊÁÏ£¬£¬ÊÕ»ñÈ´²»¶à£¬·¢ÏÖ×Ô¼ºÖªµÀ µÄÌ«ÉÙÁ˲»¾«flash£¬flexÒ²²»»á£¬¹â½çÃæ¾Í²»ºÃ°ì£¬
µ«ÊǼÈÈ»Ïëµ½ÕâÁË£¬²»»áÒ²ÒªÉÏÁË£¬£¬¹þ¡£
²»»áflashÁËÎÒ¾ÍÓÃcss+javascri ......

javaÖеijéÏóÀ࣬½Ó¿Ú£¬ÄÚ²¿Àà

³éÏóÀà(abstract class)£º
    ÔÚclassÇ°¼ÓÉÏabstractµÄÀà¾ÍÊdzéÏóÀ࣬È磺public abstract class A{};
    ÓÃabstract¹Ø¼ü×ÖÀ´ÐÞÊÎÒ»¸öÀàʱ£¬Õâ¸öÀà½Ð×ö³éÏóÀࣻÓÃabstractÀ´ÐÞÊÎÒ»¸ö·½·¨Ê±£¬¸Ã·½·¨½Ð×ö³éÏó·½·¨(³éÏó·½·¨Ã»Óз½·¨Ìå)¡£
    º¬ÓгéÏó·½·¨µÄÀà±ØÐë±»ÉùÃ÷Ϊ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØͼ | ¸ÓICP±¸09004571ºÅ