class_docstr: Executor that mocks a steady state, by only providing 1 job at a time which is done() while
  not having been "read" (i.e. "result()" method was not executed).
  This ensures we control the order of update of the optimizer for benchmarking.
  
  Additionally, "delays" can be provided by the function so that jobs are not "done()" by order of
  submission. To this end, callables must implement a "computation_time" method.
class_docstr_tok: ["Executor","that","mocks","a","steady","state",",","by","only","providing","1","job","at","a","time","which","is","done","(",")","while","not","having","been","``","read","''","(","i.e",".","``","result","(",")","''","method","was","not","executed",")",".","This","ensures","we","control","the","order","of","update","of","the","optimizer","for","benchmarking",".","Additionally",",","``","delays","''","can","be","provided","by","the","function","so","that","jobs","are","not","``","done","(",")","''","by","order","of","submission",".","To","this","end",",","callables","must","implement","a","``","computation_time","''","method","."]
docstr: Called whenever a result is read, so as to activate the next result in line
  in case of steady mode, and to update executor time.
docstr_tok: ["Called","whenever","a","result","is","read",",","so","as","to","activate","the","next","result","in","line","in","case","of","steady","mode",",","and","to","update","executor","time","."]
code: def notify_read(self, job: MockedTimedJob) -> None:
      """Called whenever a result is read, so as to activate the next result in line
      in case of steady mode, and to update executor time.
      """
      self._process_submissions()  # make sure everything is up to date
      if not self.batch_mode:
          expected = self._steady_priority_queue[0]
          assert job is expected.job, "Only first job should be read"
          heapq.heappop(self._steady_priority_queue)
          if self._steady_priority_queue:
              self._steady_priority_queue[0].job._done = True
      self._time = max(self._time, job.release_time)
  
imports: import heapq
  import typing
  from collections import deque
  from nevergrad.functions import ExperimentFunction
label_desc: Use image node_id 6 for calling the MockedTimedExecutor obj's underlying member method code with example usage: obj.notify_read(job) without return types