| New file | 
 |  |  | 
 |  |  | package com.dy.rtuMw.server.rtuData; | 
 |  |  |  | 
 |  |  | import com.dy.common.queue.NodeObj; | 
 |  |  | import com.dy.common.threadPool.ThreadPool; | 
 |  |  | import com.dy.common.threadPool.TreadPoolFactory; | 
 |  |  | import org.apache.logging.log4j.LogManager; | 
 |  |  | import org.apache.logging.log4j.Logger; | 
 |  |  |  | 
 |  |  | public class RtuDataNode implements NodeObj { | 
 |  |  |  | 
 |  |  |     private static final Logger log = LogManager.getLogger(RtuDataNode.class.getName()); | 
 |  |  |  | 
 |  |  |     public Object obj ;//数据 | 
 |  |  |  | 
 |  |  |     public RtuDataNode(Object obj){ | 
 |  |  |         this.obj = obj ; | 
 |  |  |     } | 
 |  |  |     /** | 
 |  |  |      * 自己处理自己 | 
 |  |  |      * @return | 
 |  |  |      */ | 
 |  |  |     public boolean dealSelf(){ | 
 |  |  |         try { | 
 |  |  |             ThreadPool.Pool pool = TreadPoolFactory.getThreadPoolLong() ; | 
 |  |  |             pool.putJob(new ThreadPool.Job() { | 
 |  |  |                 public void execute() { | 
 |  |  |                     if(obj != null){ | 
 |  |  |                         TaskSurpport task = null ; | 
 |  |  |                         try{ | 
 |  |  |                             task = TaskPool.popTask() ; | 
 |  |  |                             if(task != null){ | 
 |  |  |                                 task.execute(obj); | 
 |  |  |                             }else{ | 
 |  |  |                                 log.error("未得到RTU主动上报数据处理任务!"); | 
 |  |  |                             } | 
 |  |  |                         }catch(Exception e){ | 
 |  |  |                             log.error("上行数据任务池处理数据时发生异常", e); | 
 |  |  |                         }finally { | 
 |  |  |                             if(task != null){ | 
 |  |  |                                 TaskPool.freeAndCleanTask(task); | 
 |  |  |                             } | 
 |  |  |                         } | 
 |  |  |                     } | 
 |  |  |                 } | 
 |  |  |                 @Override | 
 |  |  |                 public void destroy(){ | 
 |  |  |                 } | 
 |  |  |                 @Override | 
 |  |  |                 public boolean isDestroy(){ | 
 |  |  |                     return false ; | 
 |  |  |                 } | 
 |  |  |  | 
 |  |  |             }); | 
 |  |  |         } catch (Exception e) { | 
 |  |  |             log.error("在RtuDataNode内发生异常", e); | 
 |  |  |         } | 
 |  |  |         return true ; | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |  | 
 |  |  | } |