鱼香ROS社区
    • 版块
    • 最新
    • 未解决
    • 已解决
    • 群组
    • 注册
    • 登录
    紧急通知:禁止一切关于政治&VPN翻墙等话题,发现相关帖子会立马删除封号
    提问前必看的发帖注意事项: 社区问答规则(小鱼个人)更新 | 高质量帖子发布指南

    ros2有时publish失败程序异常退出

    已定时 已固定 已锁定 已移动
    ROS 2相关问题
    ros2 hamble ros2 run失败
    1
    4
    242
    正在加载更多帖子
    • 从旧到新
    • 从新到旧
    • 最多赞同
    回复
    • 在新帖中回复
    登录后回复
    此主题已被删除。只有拥有主题管理权限的用户可以查看。
    • 7
      734741837
      最后由 编辑

      使用ros2 发布一个Localization数据,有时候会突然异常退出,通过堆栈信息最后退出在发送函数,具体信息如下,多次运行程序,有一定几率出现。
      clcpp::exceptions::throw_from_rcl_error(int, std::cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rcutils_error_state_s const*, void (*)()) ()
      from /opt/ros/humble/lib/librclcpp.so
      No symbol table info available.
      #7 0x0000aaaaab08799c in std::enable_if<rosidl_generator_traits::is_message<roscpp_tutorials::msg::Localization
      <std::allocator<void> > >::value&&std::is_same<roscpp_tutorials::msg::Localization
      <std::allocator<void> >, roscpp_tutorials::msg::Localization_<std::allocator<void> > >::value, void>::type rclcpp::Publisher<roscpp_tutorials::msg::Localization_<std::allocator<void> >, std::allocator<void> >::publish<roscpp_tutorials::msg::Localization_<std::allocator<void> > >(roscpp_tutorials::msg::Localization_<std::allocator<void> > const&) ()

      1 条回复 最后回复 回复 引用 0
      • 7
        734741837
        最后由 编辑

        进一步定位是在LoanedMessage,这个是ros2 bug?
        rclcpp::LoanedMessage<roscpp_tutorials::msg::Localization_<std::allocator<void> >, std::allocator<void> >::LoanedMessage(rclcpp::PublisherBase const&, std::allocator<roscpp_tutorials::msg::Localization_<std::allocator<void> > >) + 704 in section .text

        7 1 条回复 最后回复 回复 引用 0
        • 7
          734741837 @734741837
          最后由 编辑

          发布的消息类型是POD类型,可以使用零拷贝

          1 条回复 最后回复 回复 引用 0
          • 7
            734741837
            最后由 编辑

            怀疑是使用的共享内存数据太小,不到100Byte,内存申请异常,改为使用TCP后正常

            1 条回复 最后回复 回复 引用 0
            • 第一个帖子
              最后一个帖子
            皖ICP备16016415号-7
            Powered by NodeBB | 鱼香ROS