diff options
author | James Ennis <james.ennis@codethink.co.uk> | 2019-05-14 11:49:58 +0100 |
---|---|---|
committer | James Ennis <james.ennis@codethink.co.uk> | 2019-06-07 14:47:16 +0100 |
commit | 14514683bad92f9947540784572173036310ce29 (patch) | |
tree | 4d148c74710806eb3bbf6e1409787a9352d38b0a /src/buildstream/_stream.py | |
parent | 3427cea53ed9f4c6517606fd13abf2d06352f8d2 (diff) | |
download | buildstream-14514683bad92f9947540784572173036310ce29.tar.gz |
queue.py: Push-based queues
* Queue.enqueue() and Queue.harvest_jobs() now exhibit
push-based behaviour. Although most of the logic from
Queue.enqueue() has been moved to Queue._enqueue_element()
* QueueStatus.WAIT has been replaced with QueueStatus.PENDING
to reflect the new push-based nature of the queues
* There now exists a virtual method in Queue:
register_pending_element which is used to register am
element which is not immediately ready to be processed
in the queue with specific callbacks. These
callbacks will enqueue the element when called.
Diffstat (limited to 'src/buildstream/_stream.py')
-rw-r--r-- | src/buildstream/_stream.py | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/buildstream/_stream.py b/src/buildstream/_stream.py index 2343c553c..537671679 100644 --- a/src/buildstream/_stream.py +++ b/src/buildstream/_stream.py @@ -1180,6 +1180,7 @@ class Stream(): if not (track or self._first_non_track_queue): self._first_non_track_queue = queue + self._first_non_track_queue.set_required_element_check() # _enqueue_plan() # |