ÔÎÄ·¢±íÔÚhttp://baihuazhou.javaeye.com/blog/200642
ÎÒÃÇÔÚÏîÄ¿ÖУ¬¾³£»áÅöµ½ÕâÑùÒ»ÖÖÐèÇ󣬾ÍÊÇÈÃij¸ö³ÌÐòÔÚij¸ö¹Ì¶¨µÄʱ¼äÈ¥ÔËÐУ¬±ÈÈ綨ʱ±¸·Ý²Ù×÷¡£ÔÚJavaµÄJ2SEµÄAPIÖпÉÒÔºÜÈÝÒ××öµ½ÕâÒ»µã¡£
ÈÃÎÒÃÇÐèÒª¶¨Ê±Ö´ÐеÄÀà¼Ì³Ð×Ôjava.util.TimerTaskÖеÄTimerTaskÀ࣬°ÑÐèÒªÖ´Ðеķ½·¨·ÅÈërun·½·¨ÖУº
import java.util.TimerTask;
public class MyTimerTask extends TimerTask {
@Override
public void run() {
System.out.println( " ±¸·Ý³ÌÐòÔËÐÐ…… " );
}
}
È»ºóÎÒÃÇÊÇjava.util.TimerÀàÀ´Ö´ÐÐÕâ¸ö·½·¨£¬²âÊÔÀࣺ
import java.util.Timer;
public class Test {
public static void main(String[] args) {
Timer timer = new Timer();
timer.sche ......
µÚ8Õ ¶àÏß³Ì
±¾ÕÂĿ¼
8.1¡¡²¢·¢ÐÔ¡¢Ïß³ÌÓë¶àÏß³Ì
8.2¡¡»ñµÃÏß³ÌÌåµÄÁ½ÖÖ·½·¨
8.3¡¡Ï̵߳÷¶È
8.1¡¡²¢·¢ÐÔ¡¢Ïß³ÌÓë¶àÏß³Ì
Ò»¡¢²¢·¢ÐԵĸÅÄî
ĿǰµÄ¼ÆËã»ú²Ù×÷ϵͳ´ó¶àÖ§³Ö²¢·¢ÐÔ£¬¼´¶à¸ö½ø³ÌÊǽ»²æÖ´Ðеģ¬Ò»°ã³Æ¶à½ø³ÌΪϵͳ¼¶²¢·¢¡£
JavaÓïÑÔͨ¹ý³ÌÐò¿ØÖÆÁ÷À´Ö´ÐгÌÐò£¬µ¥¸öµÄÒ»¶Î³ÌÐòÖ´ÐпØÖÆÁ÷³ÆÎªÏ̡߳£
¶àÏß³ÌÖ¸µÄÊÇÔÚµ¥¸ö³ÌÐòÄÚ²¿¿ÉÒÔͬʱÔËÐжà¸öÏàͬ»ò²»Í¬µÄÏß³ÌÀ´Ö´Ðв»Í¬µÄÈÎÎñ¡£
Ïß³ÌÓë²Ù×÷ϵͳÖеĽø³ÌÓÐЩÏàËÆ£¬Í¬Ò»Ê±¿Ì²Ù×÷ϵͳÖпÉÒÔÓжà¸ö½ø³ÌÔÚÔËÐУ¬µ«ÊÇÏß³ÌÔò¸ü½øÒ»²½£¬½«²¢·¢Íƽøµ½ÓïÑÔ¼¶£¬ËùÒÔ˵JavaÓïÑÔÖ§³ÖÓïÑÔ¼¶²¢·¢¡£
ÔÚµ¥¸ö³ÌÐòÄÚ²¿Ò²¿ÉÒÔÔÚͬһʱ¿ÌÓжà¸öÏß³ÌÔÚ½øÐв»Í¬µÄÔËËã¡£
¶àÏß³ÌÒ²ÐèҪϵͳͨ¹ý·ÖÅä´¦ÀíÆ÷µÄÔËÐÐʱ¼ä½øÐе÷¶ÈÒÔÌá¸ßÕû¸ö³ÌÐòµÄÔËÐÐЧÂÊ¡£
¶þ¡¢Ï̵߳Ä״̬ÓëÉúÃüÖÜÆÚ
Ò»¸öÏß³ÌÔÚÆäÉúÃüÉú´æÊ±¶ÎÄÚµÄÈÎһʱ¿Ì¶¼´¦ÓÚijһÖÖÏß³Ì״̬£¬Ïß³ÌÔÚ´ÓÆäÉúÃü¿ªÊ¼µ½½áÊøµÄʱ¼äÄÚ½«¿ÉÄܾÀú´Ó³öÉú̬µ½ËÀÍö̬µÄ¶àÖÖ״̬£¬Õâ¹¹³ÉÁËËüµÄÉúÃüÖÜÆÚ¡£
Ï̵߳Ä״̬°üÀ¨ÒÔÏÂ7ÖÖ£º
³öÉú̬£¨Born state£©£¬Ò²³ÆÎªÐÂỊ̈߳¨New Thread£©¡£
¾ÍÐ÷̬£¨Ready state£©£¬Ò²³ÆÎª¿ÉÔËÐÐỊ̈߳¨Runnable Thread£©¡£
ÔËÐÐ̬£¨Running state£©¡£
ÐÝ ......
ÔÚJAVAÖнøÐÐÎļþµÄ¶Áд²Ù×÷Ö÷ÒªÓõ½ÁËJAVAÖеÄÊäÈëÊä³ö£¨IO£©API£¬Java I/OÌṩÁËÐí¶àAPIÌṩ¶ÔÎļþ£¬Äڴ棬socketµÄ¶ÁдµÈ£¬±¾ÎÄÖ÷Ҫͨ¹ýʵÀýÀ´½²½âÔõÑùÀí½âjavaÖеÄÊäÈëÊä³ö¡£
Ò»£¬»ù±¾¸ÅÄî
Á÷£¨Stream£©£º
Á÷ÊÇÒ»ÖÖÓÐÐòµÄ×Ö½ÚÊý¾Ý¶ÔÏó¡£Á÷ÓÖ·ÖΪÊäÈëÁ÷£¨InputStream£©ºÍÊä³öÁ÷£¨OutputStream£©¡£ÊäÈëÁ÷´ÓÍⲿ×ÊÔ´£¨Îļþ£¬Äڴ棬socketµÈ£©¶ÁÈë×Ö½ÚÊý¾Ýµ½Java¶ÔÏó£»Êä³öÁ÷Ôò°ÑJava¶ÔÏó£¨×Ö½ÚÊý¾ÝµÈ£©Ð´Èëµ½Íⲿ×ÊÔ´¡£
Àí½â£º¿ÉÒÔ°ÑÁ÷ÈÏΪÊÇÉú»îÖеÄÄàʯÁ÷£¬ÀïÃæµÄʯͷ£¬Ä࣬¿ÉÒÔÏëÏñ³ÉÊÇÊý¾Ý£¬ÒªÐγÉÄàʯÁ÷£¬ÓÐÁ½¸ö±ØÒªµÄÌõ¼þ£¬Ê×ÏÈÒªÓÐÔØÌ壬ˮҲ¾ÍÊÇÊäÈ룬µÚ¶þÒªÓÐÊý¾Ý£¬É½ÉϵÄÄàÓÐʯͷ¡£Ò²¾ÍÊÇÔ´¡£µ±ÄàʯÁ÷Á÷µ½Ä³¸öµØ·½Í£Ö¹ºó£¬¾Í»á°ÑÄàºÍÊ¯Í·ÖØÐ¶ѻýÆðÀ´£¬Ò²¾ÍÊÇÎÒÃÇÁ÷µÄÄ¿µÄµØÒ²¾ÍÊÇÊä³ö¡£
Îļþ:ÎļþÊǼÆËã»úÖÐÒ»ÖÖ»ù±¾µÄÊý¾Ý´æ´¢ÐÎʽ£¬ÔÚʵ¼Ê´æ´¢Êý¾Ýʱ£¬Èç¹û¶ÔÓÚÊý¾ÝµÄ¶ÁдËÙ¶ÈÒªÇó²»ÊǺܸߣ¬´æ´¢µÄÊý¾ÝÁ¿²»ÊǺܴóʱ£¬Ê¹ÓÃÎļþ×÷ΪһÖÖ³Ö¾ÃÊý¾Ý´æ´¢µÄ·½Ê½ÊDZȽϺõÄÑ¡Ôñ
¾ø¶Ô·¾¶:¾ø¶Ô·¾¶ÊÇÖ¸ÊéдÎļþµÄÍêÕû·¾¶£¬ÀýÈçd:\java\Hello.java£¬¸Ã·¾¶Öаü ......
(1)Timer.schedule(TimerTask task,Date time)°²ÅÅÔÚÖÆ¶¨µÄʱ¼äÖ´ÐÐÖ¸¶¨µÄÈÎÎñ¡£
(2)Timer.schedule(TimerTask task,Date firstTime ,long period)°²ÅÅÖ¸¶¨µÄÈÎÎñÔÚÖ¸¶¨µÄʱ¼ä¿ªÊ¼½øÐÐÖØ¸´µÄ¹Ì¶¨ÑÓ³ÙÖ´ÐУ®
(3)Timer.schedule(TimerTask task,long delay)°²ÅÅÔÚÖ¸¶¨ÑÓ³ÙºóÖ´ÐÐÖ¸¶¨µÄÈÎÎñ£®
(4)Timer.schedule(TimerTask task,long delay,long period)°²ÅÅÖ¸¶¨µÄÈÎÎñ´ÓÖ¸¶¨µÄÑÓ³Ùºó¿ªÊ¼½øÐÐÖØ¸´µÄ¹Ì¶¨ÑÓ³ÙÖ´ÐУ®
(5)Timer.scheduleAtFixedRate(TimerTask task,Date firstTime,long period)°²ÅÅÖ¸¶¨µÄÈÎÎñÔÚÖ¸¶¨µÄʱ¼ä¿ªÊ¼½øÐÐÖØ¸´µÄ¹Ì¶¨ËÙÂÊÖ´ÐУ®
(6)Timer.scheduleAtFixedRate(TimerTask task,long delay,long period)°²ÅÅÖ¸¶¨µÄÈÎÎñÔÚÖ¸¶¨µÄÑÓ³Ùºó¿ªÊ¼½øÐÐÖØ¸´µÄ¹Ì¶¨ËÙÂÊÖ´ÐÐ ......
ÔÚJavaÖУ¬²»Í¬µÄÀà¶¼ÓÐ×Ô¼ºµ¥¶ÀµÄCache»úÖÆ£¬ÊµÏֵķ½·¨Ò²¿ÉÄÜÓÐËù²»Í¬£¬ÎÄÕÂÁоÙÁËJavaÖг£¼ûµÄ¸÷ÀàCache»úÖÆµÄʵÏÖ·½·¨£¬Í¬Ê±½øÐÐÁË×ۺϵıȽϡ£
OSCache
OSCacheÊǸöÒ»¸ö¹ã·º²ÉÓõĸßÐÔÄܵÄJava EE»º´æ¿ò¼Ü£¬OSCacheÄÜÓÃÓÚÈκÎJavaÓ¦ÓóÌÐòµÄÆÕͨµÄ»º´æ½â¾ö·½°¸¡£
OSCacheÓÐÒÔÏÂÌØµã£º»º´æÈκζÔÏó£¬Äã¿ÉÒÔ²»ÊÜÏÞÖÆµÄ»º´æ²¿·ÖjspÒ³Ãæ»òHTTPÇëÇó£¬ÈκÎjava¶ÔÏ󶼿ÉÒÔ»º´æ¡£ÓµÓÐÈ«ÃæµÄAPI--OSCache API¸øÄãÈ«ÃæµÄ³ÌÐòÀ´¿ØÖÆËùÓеÄOSCacheÌØÐÔ¡£
ÓÀ¾Ã»º´æ--»º´æÄÜËæÒâµÄдÈëÓ²ÅÌ£¬Òò´ËÔÊÐí°º¹óµÄ´´½¨(expensive-to-create)Êý¾ÝÀ´±£³Ö»º´æ£¬ÉõÖÁÄÜÈÃÓ¦ÓÃÖØÆô¡£Ö§³Ö¼¯Èº--¼¯Èº»º´æÊý¾ÝÄܱ»µ¥¸öµÄ½øÐвÎÊýÅäÖ㬲»ÐèÒªÐ޸ĴúÂë¡£»º´æ¼Ç¼µÄ¹ýÆÚ--Äã¿ÉÒÔÓÐ×î´óÏ޶ȵĿØÖÆ»º´æ¶ÔÏóµÄ¹ýÆÚ£¬°üÀ¨¿É²åÈëʽµÄˢвßÂÔ(Èç¹ûĬÈÏÐÔÄܲ»ÐèҪʱ)¡£
Java Caching System
JSC(Java Caching System)ÊÇÒ»¸öÓ÷ֲ¼Ê½µÄ»º´æÏµÍ³£¬ÊÇ»ùÓÚ·þÎñÆ÷µÄjavaÓ¦ÓóÌÐò¡£ËüÊÇͨ¹ýÌṩ¹ÜÀí¸÷ÖÖ¶¯Ì¬»º´æÊý¾ÝÀ´¼ÓËÙ¶¯Ì¬webÓ¦Óá£JCSºÍÆäËû»º´æÏµÍ³Ò»Ñù£¬Ò²ÊÇÒ»¸öÓÃÓÚ¸ßËÙ¶ÁÈ¡£¬µÍËÙдÈëµÄÓ¦ÓóÌÐò¡£¶¯Ì¬ÄÚÈݺͱ¨±íϵͳÄܹ»»ñµÃ¸üºÃµÄÐÔÄÜ¡£
Èç¹ûÒ»¸öÍøÕ¾£¬ÓÐÖØ¸´µÄÍøÕ¾½á¹¹£¬Ê¹ÓüäЪÐÔ¸üз½Ê½µÄÊý¾Ý¿ ......
public class test {
public static void main(String argv[]) {
try {
Runtime.getRuntime().exec("cmd /c del F:\\aaa.txt");
} catch (Exception e) {
e.printStackTrace();
}
}
} ......