public interface SlotProvider
It supports two allocating modes:
CompletableFuture.getNow(Object)
to get the allocated slot.Modifier and Type | Method and Description |
---|---|
default CompletableFuture<LogicalSlot> |
allocateSlot(ScheduledUnit task,
boolean allowQueued,
SlotProfile slotProfile,
Time timeout)
Allocating slot with specific requirement.
|
CompletableFuture<LogicalSlot> |
allocateSlot(SlotRequestId slotRequestId,
ScheduledUnit task,
boolean allowQueued,
SlotProfile slotProfile,
Time timeout)
Allocating slot with specific requirement.
|
CompletableFuture<Acknowledge> |
cancelSlotRequest(SlotRequestId slotRequestId,
SlotSharingGroupId slotSharingGroupId,
Throwable cause)
Cancels the slot request with the given
SlotRequestId and SlotSharingGroupId . |
CompletableFuture<LogicalSlot> allocateSlot(SlotRequestId slotRequestId, ScheduledUnit task, boolean allowQueued, SlotProfile slotProfile, Time timeout)
slotRequestId
- identifying the slot requesttask
- The task to allocate the slot forallowQueued
- Whether allow the task be queued if we do not have enough resourceslotProfile
- profile of the requested slottimeout
- after which the allocation fails with a timeout exceptiondefault CompletableFuture<LogicalSlot> allocateSlot(ScheduledUnit task, boolean allowQueued, SlotProfile slotProfile, Time timeout)
task
- The task to allocate the slot forallowQueued
- Whether allow the task be queued if we do not have enough resourceslotProfile
- profile of the requested slottimeout
- after which the allocation fails with a timeout exceptionCompletableFuture<Acknowledge> cancelSlotRequest(SlotRequestId slotRequestId, @Nullable SlotSharingGroupId slotSharingGroupId, Throwable cause)
SlotRequestId
and SlotSharingGroupId
.slotRequestId
- identifying the slot request to cancelslotSharingGroupId
- identifying the slot request to cancelcause
- of the cancellationCopyright © 2014–2020 The Apache Software Foundation. All rights reserved.