On Tue, Nov 9, 2010 at 5:17 PM, Josh Faust wrote: >> >> Sure. I assume the callbacks just don't get called any more.  But, a >> device thread (see below) needs to know when to terminate. Does it >> still check ros::ok() or ros::shutdown()? > > No, you'd check some flag that you set in your nodelet's destructor, and > then the destructor joins on that thread.  Your nodelet may be getting > stopped even though the node itself is still running. That's what I was wondering about. I'm not in the habit of doing long-running things in a destructor. I worry that things may get hung up somehow with multiple threads in flight. --  joq