package com.dev.lock.comm;
|
|
import java.io.IOException;
|
import java.net.ServerSocket;
|
import java.net.Socket;
|
|
import org.apache.logging.log4j.LogManager;
|
import org.apache.logging.log4j.Logger;
|
|
import com.config.AppConfig;
|
import com.dev.lock.data.ElectLock_Array;
|
import com.sql.MysqlConnPool;
|
|
public class Lock_ServerSocket_Thread extends Thread{
|
private MysqlConnPool pool;
|
private AppConfig config;
|
private Logger logger;
|
private ElectLock_Array GB_Lock_Array;
|
|
public Lock_ServerSocket_Thread(MysqlConnPool pool,ElectLock_Array GB_Lock_Array,AppConfig config){
|
this.pool = pool;
|
this.config = config;
|
this.GB_Lock_Array = GB_Lock_Array;
|
this.logger = LogManager.getLogger(this);
|
}
|
|
@Override
|
public void run() {
|
logger.info(this.getName() + " - Lock_ServerSocket_Thread Started On Port " + config.getLockAcceptPort() );
|
ServerSocket server = null;
|
while(true) {
|
try {
|
logger.info(" Power_ServerSocket_Thread 开始监听" + config.getLockAcceptPort() + "端口");
|
//监听9611端口
|
server = new ServerSocket(config.getLockAcceptPort());
|
server.setSoTimeout(600000);
|
while(true) {
|
Socket tmp_socket = server.accept();
|
Lock_SocketClient_Thread client_Thread = new Lock_SocketClient_Thread(pool,GB_Lock_Array, config, tmp_socket);
|
client_Thread.start();
|
}
|
} catch (Exception e) {
|
logger.error(e.toString(),e);
|
try {
|
Thread.sleep(5000);
|
} catch (InterruptedException e1) {
|
logger.error(e1.toString(),e1);
|
}
|
} finally {
|
if(null != server) {
|
try {
|
server.close();
|
} catch (IOException e1) {
|
logger.error(e1.toString(),e1);
|
}
|
}
|
}
|
}
|
}
|
}
|