Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Jobs ¶
type Jobs struct {
// contains filtered or unexported fields
}
Jobs tracks jobs that can be executed
type JobsWithMissing ¶
type JobsWithMissing struct {
// contains filtered or unexported fields
}
JobsWithMissing tracks jobs that are blocked on missing items
func NewJobsWithMissing ¶
func NewJobsWithMissing() *JobsWithMissing
NewJobsWithMissing returns a new JobsWithMissing instance
func (*JobsWithMissing) AddMissingID ¶
func (j *JobsWithMissing) AddMissingID(missingID ids.ID, job Job)
AddMissingID adds a job that's waiting for a missing ID
func (*JobsWithMissing) HasMissingIDs ¶
func (j *JobsWithMissing) HasMissingIDs() bool
HasMissingIDs returns true if there are missing IDs
func (*JobsWithMissing) MissingIDs ¶
func (j *JobsWithMissing) MissingIDs() []ids.ID
MissingIDs returns the IDs that are missing
func (*JobsWithMissing) RemoveMissingID ¶
func (j *JobsWithMissing) RemoveMissingID(id ids.ID) []Job
RemoveMissingID removes jobs waiting for an ID and returns them
type Queue ¶
type Queue interface {
// Push adds a job to the queue
Push(Job)
// Pop removes and returns the highest priority job
Pop() (Job, bool)
// Len returns the number of jobs in the queue
Len() int
// Has returns true if the job is in the queue
Has(ids.ID) bool
// Remove removes a job from the queue
Remove(ids.ID) bool
}
Queue is a priority queue for jobs
Click to show internal directories.
Click to hide internal directories.