java¶àÏ̱߳à³ÌÒªµã(Èý)
ÔÚJDK1.5֮ǰ£¬¶Ô¸ßÖÊÁ¿Java¶àÏ̲߳¢·¢³ÌÐòÉè¼ÆÊ±£¬Îª·ÀÖ¹³ÌÐò±ÀµôµÈÏÖÏóµÄ³öÏÖ£¬±ÈÈçʹÓÃwait()¡¢notify()ºÍsynchronizedµÈ£¬ÐèÒª¿¼ÂÇÐÔÄÜ¡¢ËÀËø¡¢¹«Æ½ÐÔ¡¢×ÊÔ´¹ÜÀíÒÔ¼°ÈçºÎ±ÜÃâḬ̈߳²È«ÐÔ·½Ãæ´øÀ´µÄΣº¦µÈÖî¶àÒòËØ£¬Í¨³£»á²ÉÓÃһЩ½ÏΪ¸´Ôӵݲȫ²ßÂÔ£¬¼ÓÖØÁ˳ÌÐòÔ±µÄ¿ª·¢¸ºµ£¡£ÔÚJDK1.5³öÏÖÖ®ºó£¬´óÅ£Doug Lee±àдÁËjava.util.concurrent java²¢·¢¹¤¾ß°ü£¬¿ª·¢ÕßÀûÓô˰ü£¬¿É´ó´óÌá¸ß²¢·¢³ÌÐòµÄ¿ª·¢Ð§ÂÊ£¬²¢ÇÒÄÜÓÐЧ·ÀÖ¹×ÊÔ´¾ºÕù¡¢×´Ì¬Ò»ÖºͱÜÃâËÀËø¡£java.util.concurrent°ü·Ö³ÉÁËÈý¸ö²¿·Ö£¬·Ö±ðÊÇjava.util.concurrent¡¢java.util.concurrent.atomicºÍjava.util.concurrent.locks¡£ÄÚÈݺ¸ÇÁ˲¢·¢¼¯ºÏÀà¡¢Ï̳߳ػúÖÆ¡¢Í¬²½»¥³â»úÖÆ¡¢Ḭ̈߳²È«µÄ±äÁ¿¸üй¤¾ßÀà¡¢ËøµÈ³£Óù¤¾ß¡£
1£© java.util.concurren£ºÆäÖ÷ÒªµÄ½Ó¿ÚºÍÀàÓÐExecutor¡¢Executors¡¢ExecutorService¡¢Callable¡¢FutureºÍBlockingQueue£¬Õâ6¸ö½Ó¿ÚºÍÀà¿ÉÈçÏÂÀí½â£º
﹒Executor£º¾ßÌåRunnableÈÎÎñµÄÖ´ÐÐÕߣ»
﹒Executors£ºÌṩÁËһϵÁй¤³§·½·¨ÓÃÓÚ´´ÏÈÏ̳߳أ¬·µ»ØµÄÏ̳߳ض¼ÊµÏÖÁËExecutorService½Ó¿Ú£»
﹒ExecutorService£ºÀ©Õ¹ÁËExecutor²¢Ìí¼ÓÁËһЩÉúÃüÖÜÆÚ¹ÜÀíµÄ·½·¨¡£Ò»¸öExecutorServiceµÄÉúÃüÖÜÆÚÓÐÈýÖÖ״̬£ºÔËÐС¢¹Ø±ÕºÍÖÕÖ¹¡£ExecutorService´´½¨Ê±´¦ÓÚÔËÐÐ״̬£¬µ±µ÷ÓÃExecutorService.shutdown()ºó´¦ÓڹرÕ״̬£¬ËùÓÐÒÑÌí¼ÓµÄÈÎÎñÖ´ÐÐÍê±ÏºóExecutorService´¦ÓÚÖÕֹ״̬£»
¡¡¡¡﹒Future£ºÊÇÓëRunnable,Callable½øÐн»»¥µÄ½Ó¿Ú£¬±ÈÈçÒ»¸öÏß³ÌÖ´ÐнáÊøºóÈ¡·µ»ØµÄ½á¹ûµÈµÈ£¬»¹ÌṩÁËcancelÖÕÖ¹Ị̈߳»
﹒BlockingQueue£º×èÈû¶ÓÁС£
±í¸ñËùʾΪ´úÂëʾÀý£º
package com.thread.test.concurent;
import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.Callable;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.Executor;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.Future;
import java.util.concurrent.FutureTask;
i
Ïà¹ØÎĵµ£º
/**
* ¶ÑÅÅÐò
*
* */
public void heapSort(double[] a){
double temp;
initCreateHeap(a);
for(int i = a.length - 1; i > 0; i --){
temp = a[0];
a[0] = a[i];
a[i] = temp;
createHeap(a, i, 0);
}
}
/**
* ½«Êý×é¿´³ÉÍêÈ«¶þ²æÊ÷£¬½¨Á¢×î´ó¶Ñ
* */
private ......
ÏîÄ¿ÖÐÐèÒªºÍµÚÈý·½Æ½Ì¨½Ó¿Ú£¬¼ÓÁËÀ´Ô´IP¼øÈ¨¹¦ÄÜ£¬²âÊÔʱ·¢ÏÖûÓÐÎÊÌ⣬µ«ÊDz¿ÊðÒÔºó·¢ÏÖ´æÔÚÎÊÌ⣬һֱ¼øÈ¨²»Í¨¹ý£¬Ò»ÈºÈËץϹ¡£
ÎÒÕÒµ½ÄÇ¿éµÄ´úÂ룬¸úÁËÒ»±éÁ÷³Ì·¢ÏÖÂ߼ûÓÐɶÎÊÌ⣬µ«ÊÇ×îÖյĽá¹ûÈ´»¹ÊǼøÈ¨²»Í¨¹ý£¬ÊµÔÚÓÐЩ¹îÒì¡£Æä»ù±¾Â߼ΪÏÈÈ¡µÃÅäÖõÄIPÁÐ±í£¬È»ºóͨ¹ýrequest.getRemoteAddr()È¡µÃ¿Í»§¶ËµÄIPµ ......
1¡¢ÀûÓÃSystem.getProperty()º¯Êý»ñÈ¡µ±Ç°Â·¾¶£º
System.out.println(System.getProperty("user.dir"));//user.dirÖ¸¶¨Á˵±Ç°µÄ·¾¶
2¡¢Ê¹ÓÃFileÌṩµÄº¯Êý»ñÈ¡µ±Ç°Â·¾¶£º
File directory = new File("");//É趨Ϊµ±Ç°Îļþ¼Ð
try{
System.out.println(directory.get ......
JavaÈçºÎ²Ù×÷Word, Excel, PDFÎĵµ£¿
http://www.sina.com.cn 2006Äê08ÔÂ23ÈÕ 14:55 ̫ƽÑóµçÄÔÍø
×÷ÕߣºÊ¢ÖÒÁ¼
¡¡¡¡²Î¿¼:
¡¡¡¡http://danadler.com/jacob/
¡¡¡¡http://jakarta.apache.org/poi/
¡¡¡¡http://www.onjava.com/pub/a/onjava/2003/01/22/poi.html
¡¡¡¡http://www.c ......