JAVAÏ̳߳Ø
£¨1£©¸ù¾ÝxmlÎļþÀ´¹ÜÀíÏ̳߳صÄ×î´ó×îСÏß³ÌÊý
¡¡¡¡£¨2£©¶ÔÏ̳߳ØÍ¨¹ýTimer¶¨ÆÚɨÃèÒÔ·ÀÖ¹Ïß³Ìδ¼¤»î£»
¡¡¡¡£¨3£©Í¨¹ýijһ¸ö±äÁ¿£¨±¾³ÌÐòÖÐÊÇfreeThreadCount£©À´µÃµ½¿ÕÏÐÏ̵߳ÄÊýÄ¿£»
¡¡¡¡Ò»¡¢ÅäÖÃxml£¨listen.xml£©ÊÇ£º
¡¡¡¡<?xml version="1.0" encoding="UTF-8"?>
¡¡¡¡ <config>
¡¡¡¡ <ConsumeThreadPool>
¡¡¡¡ <minPools>10</minPools> <!--Ï̳߳Ø×îСÏß³Ì-->
¡¡¡¡ <maxPools>100</maxPools> <!--Ï̳߳Ø×î´óÏß³Ì-->
¡¡¡¡ <checkThreadPeriod>5</checkThreadPeriod> <!--¼ì²éÏ̳߳ØÖÐÏ̵߳ÄÖÜÆÚ5·ÖÖÓ-->
¡¡¡¡ </ConsumeThreadPool>
¡¡¡¡ </config>
¡¡¡¡¶þ¡¢¶ÔÓÚConsumeThreadPoolParaµÄjavabean:
¡¡¡¡import java.io.*;
¡¡¡¡public class ConsumeThreadPoolPara implements Serializable{
¡¡¡¡ private int minPools;
¡¡¡¡ private int maxPools;
¡¡¡¡ private int checkThreadPeriod;
¡¡¡¡ public int getMinPools(){
¡¡¡¡ return minPools;
¡¡¡¡ }
¡¡¡¡ public int getMaxPools(){
¡¡¡¡ return maxPools;
¡¡¡¡ }
¡¡¡¡ public int getCheckThreadPeriod(){
¡¡¡¡ return checkThreadPeriod;
¡¡¡¡ }
¡¡¡¡ public void setMinPools(int minPools){
¡¡¡¡ this.minPools = minPools;
¡¡¡¡ }
¡¡¡¡ public void setMaxPools(int maxPools){
¡¡¡¡ this.maxPools = maxPools;
¡¡¡¡ }
¡¡¡¡ public void setCheckThreadPeriod(int checkThreadPeriod){
¡¡¡¡ this.checkThreadPeriod = checkThreadPeriod;
¡¡¡¡ }
¡¡¡¡ public String toString(){
¡¡¡¡ return minPools+" " + maxPools+" "+checkThreadPeriod;
¡¡¡¡ }
¡¡¡¡ public ConsumeThreadPoolPara() {
¡¡¡¡ }
¡¡¡¡ public static void main(String[] args) {
¡¡¡¡ ConsumeThreadPoolPara consumeThreadPool1 = new ConsumeThreadPoolPara();
¡¡¡¡ }
¡¡¡¡}
¡¡¡¡Èý¡¢½âÎöxml³ÌÐò´úÂ루Éú³ÉConsumeThreadPoolPara£©£º
¡¡¡¡Ê¹ÓÃjdom½âÎö£º
¡¡¡¡import org.jdom.*;
¡¡¡¡import org.jdom.input.SAXBuilder;
¡¡¡¡import java.io.*;
¡¡¡¡import java.util.*;
¡¡¡¡public class ParseConfig {
¡¡¡¡ static Hashtable Listens = null;
¡¡¡¡ static ConnPara connpara = null;
¡¡¡¡ static ConsumeThreadPoolPara consumeThreadPoolPara = null;
¡¡¡¡ priva
Ïà¹ØÎĵµ£º
Java NIO APIÏê½â
ÔÚJDK
1.4ÒÔǰ£¬JavaµÄIO²Ù×÷¼¯ÖÐÔÚjava.ioÕâ¸ö°üÖУ¬ÊÇ»ùÓÚÁ÷µÄ×èÈû£¨blocking£©API¡£¶ÔÓÚ´ó¶àÊýÓ¦ÓÃÀ´Ëµ£¬ÕâÑùµÄAPIʹÓúܷ½
±ã£¬È»¶ø£¬Ò»Ð©¶ÔÐÔÄÜÒªÇó½Ï¸ßµÄÓ¦Óã¬ÓÈÆäÊÇ·þÎñ¶ËÓ¦Óã¬ÍùÍùÐèÒªÒ»¸ö¸üΪÓÐЧµÄ·½Ê½À´´¦ÀíIO¡£´ÓJDK 1.4Æð£¬NIO
API×÷Ϊһ¸ö»ùÓÚ»º³åÇø£¬²¢ÄÜÌṩ·Ç×èÈû(non-blo ......
¡¡¡¡ÎªÑ°Çójava´úÂëµÄÐÔÄÜÓÅ»¯£¬´ÓÍøÉÏËѵ½ÀûÓÃfinal¹Ø¼ü×Ö½øÐбàÒëʱinlineÓÅ»¯µÄ·½·¨£¬µ«ÊÇÕæµÄÓÐЧÂð£¿Êµ¼Ê²âÊÔÖз¢ÏÖδ±Ø£¬ÉõÖÁÐÔÄÜÓ°Ïì¾Þ´ó£¬×îÖÕ·ÅÆúÁËʹÓÃfinalÓÅ»¯µÄÏë·¨¡£
¡¡¡¡²âÊÔ»·¾³£ºWindows XP SP2£¬JDK 1.6.0_15-b03£¬Eclipse 3.5 SR1¡£
package test;
public class Test {
public static void main(St ......
finalÀࣺΪ·ÀÖ¹ËûÈË´ÓÄãµÄÀàÉÏÅÉÉúÐÂÀ࣬´ËÀàÊDz»¿ÉÀ©Õ¹µÄ¡£
¡¡¡¡¶¯Ì¬µ÷ÓñȾ²Ì¬µ÷Óû¨·ÑµÄʱ¼äÒª³¤¡£
¡¡¡¡³éÏóÀࣺ¹æ¶¨Ò»¸ö»ò¶à¸ö³éÏó·½·¨µÄÀà±¾Éí±ØÐ붨ÒåΪabstract¡£
¡¡¡¡Àý£º public abstract string getDescripition
¡¡¡¡JavaÖеÄÿһ¸öÀà¶¼ÊÇ´ÓObjectÀàÀ©Õ¹¶øÀ´µÄ¡£
¡¡¡¡objectÀàÖеÄequalºÍtoString·½· ......
×î¼òµ¥µÄ·þÎñÆ÷½ÓÊܵ¥Óû§ÇëÇóµÄsocket±à³ÌÄ£ÐÍ£¬´úÂëдµÃ²»ºÃ£¬Ö»ÊÇÓÃÀ´²ûÃ÷Òâ˼
client side
import java.net.*;
import java.util.*;
import java.io.*;
public class Client {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
tr ......
import java.io.*;
public class TestExe {
public static void main(String[] args) throws InterruptedException {
try {
Process child = Runtime.getRuntime().exec("C://Program Files//Sunyard//ImageInput//ImageInput.exe");
child.waitFor();
&n ......