ros節點關閉問題


問題描述:

在使用ros的服務通信時需求:先啟動客戶端,不要直接拋出異常,而是掛起,等服務器啟動后,再正常請求。

解決方案:ros中內置了相關函數,使客戶端啟動后掛起,等待服務器啟動。

client.waitForExistence();
//或
ros::service::waitForservice("服務話題");

編寫好程序程序后,在終端中輸入以下指令后,遇到的問題如圖所示:

第一次運行:正常

第二次運行:出現異常,沒有任何輸出

發現問題:

在終端中輸入命令:

rosnode list

輸出:

/service_node
/client_node
/rosout

原因:

“ctrl+z”並沒有將相關節點關閉,只是將其暫時掛起。

解決方案:

使用“ctrl+c”,關閉節點。

2021.7.27 ghb


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM