rclpy.task module
- class rclpy.task.Future(*, executor=None)
- Bases: - object- Represent the outcome of a task in the future. - add_done_callback(callback)
- Add a callback to be executed when the task is done. - Callbacks should not raise exceptions. - The callback may be called immediately by this method if the future is already done. If this happens and the callback raises, the exception will be raised by this method. - Parameters:
- callback – a callback taking the future as an agrument to be run when completed 
 
 - cancel()
- Request cancellation of the running task if it is not done already. 
 - cancelled()
- Indicate if the task has been cancelled. - Returns:
- True if the task was cancelled 
- Return type:
- bool 
 
 - done()
- Indicate if the task has finished executing. - Returns:
- True if the task is finished or raised while it was executing 
- Return type:
- bool 
 
 - exception()
- Get an exception raised by a done task. - Returns:
- The exception raised by the task 
 
 - result()
- Get the result of a done task. - Raises:
- Exception if one was set during the task. 
- Returns:
- The result set by the task, or None if no result was set. 
 
 - set_exception(exception)
- Set the exception raised by the task. - Parameters:
- result – The output of a long running task. 
 
 - set_result(result)
- Set the result returned by a task. - Parameters:
- result – The output of a long running task. 
 
 
- class rclpy.task.FutureState(value)
- Bases: - Enum- States defining the lifecycle of a future. - CANCELLED = 'CANCELLED'
 - FINISHED = 'FINISHED'
 - PENDING = 'PENDING'
 
- class rclpy.task.Task(handler, args=None, kwargs=None, executor=None)
- Bases: - Future- Execute a function or coroutine. - This executes either a normal function or a coroutine to completion. On completion it creates tasks for any ‘done’ callbacks. - This class should only be instantiated by - rclpy.executors.Executor.- cancel() None
- Request cancellation of the running task if it is not done already. 
 - executing()
- Check if the task is currently being executed. - Returns:
- True if the task is currently executing. 
- Return type:
- bool