public class MergeSortCompleter<T extends Comparable<T>> extends CountedCompleter<Void>
| 构造器和说明 |
|---|
MergeSortCompleter(MergeSortCompleter parent,
Comparable<T>[] data,
int startIndex,
int endIndex) |
MergeSortCompleter(MergeSortCompleter parent,
Comparable<T>[] data,
int startIndex,
int endIndex,
boolean asc) |
MergeSortCompleter(MergeSortCompleter parent,
Comparable<T>[] data,
int startIndex,
int endIndex,
int forkThreshold,
boolean asc)
构造器
|
| 限定符和类型 | 方法和说明 |
|---|---|
void |
compute() |
void |
doSort(Comparable<T>[] data,
int start,
int end,
boolean asc)
归并排序
|
void |
onCompletion(CountedCompleter<?> caller)
触发onCompletion逻辑
|
void |
splitAndMerge(Comparable<T>[] originArray,
int left,
int right,
boolean asc)
(两路)拆分、归并 数组
|
addToPendingCount, compareAndSetPendingCount, complete, decrementPendingCountUnlessZero, exec, firstComplete, getCompleter, getPendingCount, getRawResult, getRoot, helpComplete, nextComplete, onExceptionalCompletion, propagateCompletion, quietlyCompleteRoot, setPendingCount, setRawResult, tryCompleteadapt, adapt, adapt, cancel, compareAndSetForkJoinTaskTag, completeExceptionally, fork, get, get, getException, getForkJoinTaskTag, getPool, getQueuedTaskCount, getSurplusQueuedTaskCount, helpQuiesce, inForkJoinPool, invoke, invokeAll, invokeAll, invokeAll, isCancelled, isCompletedAbnormally, isCompletedNormally, isDone, join, peekNextLocalTask, pollNextLocalTask, pollTask, quietlyComplete, quietlyInvoke, quietlyJoin, reinitialize, setForkJoinTaskTag, tryUnforkpublic MergeSortCompleter(MergeSortCompleter parent, Comparable<T>[] data, int startIndex, int endIndex)
this#MergeSortCompleter(MergeSortCompleter, Comparable[], int, int, int, boolean)public MergeSortCompleter(MergeSortCompleter parent, Comparable<T>[] data, int startIndex, int endIndex, boolean asc)
this#MergeSortCompleter(MergeSortCompleter, Comparable[], int, int, int, boolean)public MergeSortCompleter(MergeSortCompleter parent, Comparable<T>[] data, int startIndex, int endIndex, int forkThreshold, boolean asc)
parent - 父任务data - 数据容器startIndex - 要被排序的数据的起始索引endIndex - 要被排序的数据的结尾引forkThreshold - 进行fork的数组长度阈值asc - true-升序; false-降序public void compute()
compute 在类中 CountedCompleter<Void>public void onCompletion(CountedCompleter<?> caller)
onCompletion 在类中 CountedCompleter<Void>caller - 触发调用onCompletion方法的对象public void doSort(Comparable<T>[] data, int start, int end, boolean asc)
data - 数据容器start - 要被排序的数据的起始索引end - 要被排序的数据的结尾引asc - true-升序; false-降序public void splitAndMerge(Comparable<T>[] originArray, int left, int right, boolean asc)
originArray - 数组left - 数组的起始元素索引right - 数组的结尾元素索引asc - 升序/降序。 true-升序; false-降序Copyright © 2023. All rights reserved.