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

java¶àÏ̵߳ÄЧÂʾÍÒ»¶¨¸ßÂð£¿

   ºÜ¾ÃûÉÏÀ´ÁË£¬·¢ÏÖËäÈ»×ÊÁϺÍÊé¿´µÄºÜ¶à£¬µ«ÊǺܾÃûÅöµÄ¶«Î÷»¹ÊǺÜÈÝÒ×µ­Íü¡£ÒÔºóÏ£ÍûÄܶà¼Ç¼°É¡£
   ½ñÌìÍæÁ˰ÑÏ̳߳أ¬²¢¶ÔÆäÖеIJÎÊý×öÁËһЩµ÷Õû£¬²¢¼Ç¼Ôڶಢ·¢Çé¿öÏÂÏß³ÌÊý¶Ô¸÷ÖÖÇé¿öµÄ·´Ó¦¡£³ÌÐòÊÇÍøÉÏÕҵ쬲¢×÷ÁËÉÔ΢Ð޸ġ£
javaµÄÏ̳߳ØÊµÏÖ£¬ThreadPool
package net.zj.hz.yk.threadpool;
import java.util.LinkedList;
public class ThreadPool extends ThreadGroup {
private boolean isClosed = false; // Ï̳߳ØÊÇ·ñ¹Ø±Õ
private LinkedList workQueue; // ¹¤×÷¶ÓÁÐ
private static int threadPoolID = 1; // Ï̳߳صÄid
public ThreadPool(int poolSize) {
super(threadPoolID + "");// Ö¸¶¨ThreadGroupµÄÃû³Æ
setDaemon(true); // ¼Ì³Ðµ½µÄ·½·¨£¬ÉèÖÃÊÇ·ñÊØ»¤Ï̳߳Ø
workQueue = new LinkedList(); // ´´½¨¹¤×÷¶ÓÁÐ
for (int i = 0; i < poolSize; i++) {
new WorkThread(i).start(); // ´´½¨²¢Æô¶¯¹¤×÷Ïß³Ì,Ï̳߳ØÊýÁ¿ÊǶàÉپʹ´½¨¶àÉÙ¸ö¹¤×÷Ïß³Ì
}
}
/** µÈ´ý¹¤×÷Ḭ̈߳ÑËùÓÐÈÎÎñÖ´ÐÐÍê±Ï */
public void waitFinish() {
synchronized (this) {
isClosed = true;
notifyAll(); // »½ÐÑËùÓл¹ÔÚgetTask()·½·¨ÖеȴýÈÎÎñµÄ¹¤×÷Ïß³Ì
}
// activeCount() ·µ»Ø¸ÃÏß³Ì×éÖлÏ̵߳ĹÀ¼ÆÖµ¡£
Thread[] threads = new Thread[activeCount()];
// enumerate()·½·¨¼Ì³Ð×ÔThreadGroupÀ࣬¸ù¾Ý»î¶¯Ï̵߳ĹÀ¼ÆÖµ»ñµÃÏß³Ì×éÖе±Ç°ËùÓлµÄ¹¤×÷Ïß³Ì
int count = enumerate(threads);
for (int i = 0; i < count; i++) { // µÈ´ýËùÓй¤×÷Ï߳̽áÊø
try {
threads[i].join(); // µÈ´ý¹¤×÷Ï߳̽áÊø
} catch (InterruptedException ex) {
ex.printStackTrace();
}
}
}
/** ¹Ø±ÕÏß³Ì³Ø */
public synchronized void closePool() {
if (!isClosed) {
// µÈ´ý¹¤×÷Ïß³ÌÖ´ÐÐÍê±Ï
waitFinish();
isClosed = true;
// Çå¿Õ¹¤×÷¶ÓÁÐ
workQueue.clear();
// ÖжÏÏ̳߳ØÖеÄËùÓеŤ×÷Ïß³Ì,´Ë·½·¨¼Ì³Ð×ÔThreadGroupÀà
interrupt();
}
}
/** Ïò¹¤×÷¶ÓÁÐÖмÓÈëÒ»¸öÐÂÈÎÎñ,Óɹ¤×÷Ïß³ÌÈ¥Ö´ÐиÃÈÎÎñ */
public synchronized void execute(Runnable task) {
if (isClosed) {
throw new IllegalStateException();
}
if (task != null) {
// Ïò¶ÓÁÐÖмÓÈëÒ»¸öÈÎÎñ


Ïà¹ØÎĵµ£º

javaÖÐthis¹Ø¼ü×ÖµÄʹÓÃ

1.  µ±Ä³¸öÀàÖеÄij¸ö·½·¨Öеľֲ¿±äÁ¿µÄÃû×ÖÓë¸ÃÀàÖеÄÈ«¾Ö±äÁ¿µÄÃû×ÖÏàͬʱ   ¸ÃÈ«¾Ö±äÁ¿½«±»Òþ²Ø£»´Ëʱ  Èç¹ûÏëÔڸ÷½·¨ÖÐʹÓÃÈ«¾Ö
     ±äÁ¿  ±ØÐëʹÓùؼü×Ö£¨this.È«¾Ö±äÁ¿Ãû£©
2.  µ±this¹Ø¼ü×Ö³öÏÖÔÚÀàµÄʵÀý·½·¨ÖÐʱ£¬´ú±íÕýÔÚµ÷Óø÷½·¨µÄµ±Ç°¶ÔÏó
3.  ......

JavaÖеÄinstanceof¹Ø¼ü×Ö

instanceofÊÇJavaµÄÒ»¸ö¶þÔª²Ù×÷·û£¬ºÍ==£¬>£¬<ÊÇͬһÀà¶«¶«¡£ÓÉÓÚËüÊÇÓÉ×Öĸ×é³ÉµÄ£¬ËùÒÔÒ²ÊÇJavaµÄ±£Áô¹Ø¼ü×Ö¡£ËüµÄ×÷ÓÃÊDzâÊÔËü×ó±ßµÄ¶ÔÏóÊÇ·ñÊÇËüÓұߵÄÀàµÄʵÀý£¬·µ»ØbooleanÀàÐ͵ÄÊý¾Ý¡£¾Ù¸öÀý×Ó£º
¡¡¡¡String s = "I AM an Object!";
¡¡¡¡boolean isObject = s instanceof Object;
¡¡¡¡ÎÒÃÇÉùÃ÷ÁËÒ»¸öStrin ......

java file io

ʹÓÃJava²Ù×÷Îı¾ÎļþµÄ·½·¨Ïê½â
ÕªÒª: ×î³õjavaÊDz»Ö§³Ö¶ÔÎı¾ÎļþµÄ´¦ÀíµÄ£¬ÎªÁËÃÖ²¹Õâ¸öȱº¶¶øÒýÈëÁËReaderºÍWriterÁ½¸öÀà
×î³õjavaÊDz»Ö§³Ö¶ÔÎı¾ÎļþµÄ´¦ÀíµÄ£¬ÎªÁËÃÖ²¹Õâ¸öȱº¶¶øÒýÈëÁËReaderºÍWriterÁ½¸öÀ࣬ÕâÁ½¸öÀà¶¼ÊdzéÏóÀ࣬WriterÖÐ write(char[] ch,int off,int
length)£¬flush()ºÍclose()·½·¨Îª³éÏó·½· ......

java ipµØÖ·×ª»»Îª³¤ÕûÐÍ

java ipµØÖ·×ª»»Îª³¤ÕûÐÍ£»
public class Util {
   
     /**
     * ×Ö·û´®ipת»»Îªlong
     * @param ×Ö·û´®ip
     * @return
     */
    public static long getStr ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ