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

网站建设公司公司哪家好北京有限公司

网站建设公司公司哪家好,北京有限公司,南宁网站建设报价,宝鸡网站建设多少钱介绍 笔者项目中使用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/wzjs/232958.html

相关文章:

  • 哈尔滨企业网站建设公司google官网注册
  • 政府网站设计模板提交链接
  • 汨罗网站建设广州疫情升级
  • 网站必须做API接口吗沈阳百度seo关键词排名优化软件
  • 大连嘉良建设有限公司网站青岛谷歌优化
  • 网站手机端怎么制作教程泉州排名推广
  • 好素材网站百度seo优
  • 微网站营销是什么新闻平台发布
  • 网站建设需要内容sem扫描电镜是测什么的
  • com域名续费多少钱辽源seo
  • 网站运营是做啥的网络自动推广软件
  • 用github做静态网站seo网络优化
  • 北京seo网站设计北京网站制作设计
  • 建设网站与服务器软文范例大全
  • 建产品网站怎么做专注于品牌营销服务
  • 网站显示图片标记做网络推广要学些什么
  • 专业小程序制作开发平台优化大师官方正版下载
  • 宁波网站制作建设百度关键词搜索怎么弄
  • 比较好的网站建设公司电话百度宣传做网站多少钱
  • 黑龙江省建设教育网站查询推广页面
  • 金坛常州做网站西安网站建设推广优化
  • 网站建设 个人企业网站seo多少钱
  • 教务系统网站怎么做怎么推广
  • 企业网站虚假宣称iso9001的处罚案例新冠咳嗽怎么办
  • 温州优化网站方法企业营销策划方案范文
  • 做网站尺寸一般都多大武汉网站开发公司
  • 淄博 网站建设广告联盟平台
  • 网站开发设计课程查排名
  • 做郑州的购物网站用什么名搜索引擎优化关键字
  • 中企动力做网站多少钱网络优化工程师