当前位置: 首页 > news >正文

水安建设集团网站杭州网站建站公司

水安建设集团网站,杭州网站建站公司,大专有动漫设计专业吗,五大建设的主要内容介绍 笔者项目中使用purejavacomm实现串口通信,purejavacomm自带线程池以实现COM口的监听,但是当后续数据处理流程过长,线程占用时间过长,会导致监听阻塞,会导致粘包出现。 解决办法 笔者项目中使用redis来做缓存&a…

介绍

笔者项目中使用purejavacomm实现串口通信,purejavacomm自带线程池以实现COM口的监听,但是当后续数据处理流程过长,线程占用时间过长,会导致监听阻塞,会导致粘包出现。

解决办法

笔者项目中使用redis来做缓存,也就顺便用redis做了消息队列,以实现purejavacomm线程池线程的快速归还,然后再用自定义更大的线程池来实现串口数据的处理。

Redis消息队列实现

@Resourceprivate JedisPool jedisPool;@Resource@Qualifier("taskExecutor")private Executor taskExecutor;@Overridepublic void publishMessage(String channel, String message) {try (Jedis jedis = jedisPool.getResource()) {jedis.publish(channel, message);}catch (Exception e){e.printStackTrace();log.error("发布消息异常!" + e);}}// 实现订阅方法@Overridepublic void subscribeToChannel(String channel, MessageListener listener) {taskExecutor.execute(() -> {try (Jedis jedis = jedisPool.getResource()) {JedisPubSub pubSub = new JedisPubSub() {@Overridepublic void onMessage(String channel, String message) {listener.onMessage(channel, message);}};jedis.subscribe(pubSub, channel);} catch (Exception e) {e.printStackTrace();}});}

串口数据解析

CommandLineRunner 是一个非常有用的接口,特别适合在应用启动时执行初始化或监听任务。在代码中,它被用来启动 Redis 消息监听器,确保应用启动后能够立即开始处理来自 Redis 的消息。

@Component
@Slf4j
public class DataHandler implements CommandLineRunner {// ... 其他代码 ...@Overridepublic void run(String... args) throws Exception {log.info("DataHandler 启动成功!开始监听消息");redisService.subscribeToChannel(REDIS_QUEUE_NAME, (channel, message) -> {log.info("DataHandler 收到消息:{}", message);try {String[] split = message.split(":");if (split.length == 2) {String comNum = split[0];byte[] readBuffer = ByteUtil.hexToByteArray(split[1], false);dataHandle(readBuffer, comNum);}} catch (Exception e) {e.printStackTrace();log.error("DataHandler 处理消息出错:{}", e.getMessage());}});}
}
http://www.dtcms.com/a/617288.html

相关文章:

  • 金融网站建设网网站推广视频的服务方案
  • 做网站和易语言wordpress加字体颜色
  • 大良营销网站建设信息郓城网站建设费用
  • 建个什么网站赚钱wordpress设置本地盘
  • 网站没有icp备案哪些人可以做网站
  • 网站开发下人员配置网站制作公司都找乐云seo
  • 建立网站第一步北京定制网络营销收费
  • 罗湖网站建设多少钱36氪是wordpress开发的吗
  • 网站的制作流程有哪些步骤百度网站查反链
  • 兰州网站设计厂家免费的行情软件网站下载入口
  • 企业网站建设合同方案土巴兔装修口碑怎样
  • 做商品网站的教学视频教程张家口网站设计
  • 东莞专业网站推广工具建设监理继续教育网站
  • 做外贸自己开公司网站口碑营销有哪些方式
  • led灯具网站模板国外做汽配的网站
  • 网站打开慢怎么回事啊制作公司网页平台
  • 学校网站建设方案设计做装修公司网站
  • 网站制作工资163企业邮箱服务器
  • 江苏省住房和城乡建设厅假网站网站建设 蜀美网络
  • 怎么添加网站图标住房和城乡建设厅官网证书查询
  • 网站 备案 固话腾讯企业邮箱网页登录入口
  • 北京网站建设课程培训网页制作题用什么软件
  • 网站开发视频教程百度网盘做h的小说网站
  • 产品包装设计网站找谁做网站推广基本方法是
  • 购物网站html做写字楼租赁用什么网站好
  • 免费的行情软件网站不用下载鞍山自适应网站制作
  • 营销网站参考如何做网站建设方案
  • 阿里巴巴网站建设销售成都旅游网站建设规划
  • 沈阳网站建设21anshan网站建设经验心得
  • 沈阳做公司网站的公司在阿里巴巴做网站多少钱2019