Stop custom node when stopping the dataflow
Requested by @haixuanTao
@haixuanTao Could you give more details on this request?
The problem is that some python program such as ROS python nodes are based on a forever loop. When starting them through dora we might want to stop them on dora stop.
But after discussion, we chose to leave the closing of those forever loops to the user as we might not have enough information on how to stop the nodes.
Maybe we can change the node API to ensure that the input channel is always used? With the current implementation it is easy to accidentally ignore the channel in source nodes. As a result, the nodes never receive stop signals.
Reopening so that we don't forget to investigate this further.
With the new event stream design merged in #162, all nodes should listen for incoming events, even if they don't expect inputs. Nodes that don't do this will be killed as soon as #184 is merged.
Closing as rhis is now implemented with grace duration