From e666bb0407d248faaafa13f8571990c3c776845b Mon Sep 17 00:00:00 2001 From: 648540858 <648540858@qq.com> Date: 星期四, 18 八月 2022 10:15:49 +0800 Subject: [PATCH] 去除连接池中wall配置,此配制影响批量执行sql --- src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/request/impl/message/response/cmd/RecordInfoResponseMessageHandler.java | 21 +++++++++++++-------- 1 files changed, 13 insertions(+), 8 deletions(-) diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/request/impl/message/response/cmd/RecordInfoResponseMessageHandler.java b/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/request/impl/message/response/cmd/RecordInfoResponseMessageHandler.java index 87adc3e..0d02173 100644 --- a/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/request/impl/message/response/cmd/RecordInfoResponseMessageHandler.java +++ b/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/request/impl/message/response/cmd/RecordInfoResponseMessageHandler.java @@ -39,10 +39,8 @@ @Component public class RecordInfoResponseMessageHandler extends SIPRequestProcessorParent implements InitializingBean, IMessageHandler { - private Logger logger = LoggerFactory.getLogger(RecordInfoResponseMessageHandler.class); - public static volatile List<String> threadNameList = new ArrayList(); + private final Logger logger = LoggerFactory.getLogger(RecordInfoResponseMessageHandler.class); private final String cmdType = "RecordInfo"; - private final static String CACHE_RECORDINFO_KEY = "CACHE_RECORDINFO_"; private ConcurrentLinkedQueue<HandlerCatchData> taskQueue = new ConcurrentLinkedQueue<>(); @@ -78,10 +76,14 @@ if (!taskQueueHandlerRun) { taskQueueHandlerRun = true; taskExecutor.execute(()->{ - try { - while (!taskQueue.isEmpty()) { + while (!taskQueue.isEmpty()) { + try { HandlerCatchData take = taskQueue.poll(); Element rootElementForCharset = getRootElement(take.getEvt(), take.getDevice().getCharset()); + if (rootElement == null) { + logger.warn("[ 鍥芥爣褰曞儚 ] content cannot be null, {}", evt.getRequest()); + continue; + } String sn = getText(rootElementForCharset, "SN"); String channelId = getText(rootElementForCharset, "DeviceID"); RecordInfo recordInfo = new RecordInfo(); @@ -143,10 +145,11 @@ releaseRequest(take.getDevice().getDeviceId(), sn); } } + } catch (DocumentException e) { + throw new RuntimeException(e); + } finally { + taskQueueHandlerRun = false; } - taskQueueHandlerRun = false; - }catch (DocumentException e) { - throw new RuntimeException(e); } }); } @@ -157,6 +160,8 @@ e.printStackTrace(); } catch (ParseException e) { e.printStackTrace(); + }finally { + taskQueueHandlerRun = false; } } -- Gitblit v1.8.0