ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange |
1 | initial version |
When you use the NodeMainExecutor to execute a NodeMain, it runs in another thread. The JVM will keep running until that thread exits.
You need to call nodeMainExecutor.shutdown() before your main() exits.
2 | No.2 Revision |
When you use Terminating your process will not shutdown the NodeMainExecutor to execute a NodeMain, it runs in another thread. The JVM will keep running until that thread exits.
node. You need to call nodeMainExecutor.shutdown() before your main() exits.exits. Then you will not need to click the stop button in Eclipse.
3 | No.3 Revision |
Terminating your process will not shutdown the node. node (thus leaving things still registered with the master). You need to call nodeMainExecutor.shutdown() before your main() exits. Then you will not need to click the stop button in Eclipse.
4 | No.4 Revision |
Terminating Before you asked this question, terminating your process will would not have shutdown the node (thus leaving things still registered with the master). You would need to call nodeMainExecutor.shutdown() before your main() exits. Then you will not need exits to click the stop button in Eclipse.shut down cleanly.
However, I've just pushed a change to DefaultNodeMainExecutor which corrects this issue. Thanks for bringing it to my attention :)