Я пытаюсь отсортировать массив в x10, используя qsort().
Сначала я писал последовательный код, поэтому проблем не было. Теперь я пытаюсь распараллелить свой код. Теперь мне нужно запустить эту функцию сортировки из разных мест.
public def qsort_cmp_idx(var a:Long,var b:Long):Int
{
if(item_order(a)<item_order(b)) return x10.lang.Int.operator_as(-1);
else if (item_order(a)>item_order(b))
return x10.lang.Int.operator_as(1);
else return x10.lang.Int.operator_as(0);
}
x10.util.RailUtils.qsort(jump,jt,jump_siz-1,(i:Long,j:Long)=>qsort_cmp_idx(i,j));
item_order — это Rail[Long] в месте 0, а jump — это Rail[Long] в каком-то другом месте x.
Каков наилучший способ добиться этого?