Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class Main {
- public static void main(String[] args) {
- ArrayList<Integer> initialNumbers = new ArrayList<>(Arrays.asList(60, 3, 100, 40, 98, 104, 23, 77, 35));
- int workers = 4;
- float listSize = (float) initialNumbers.size();
- int factor = (int) Math.ceil(listSize / workers);
- System.out.println("Numeros a ordenar: " + initialNumbers + " Tamaño: " + initialNumbers.size());
- System.out.println("Workers: " + workers);
- System.out.println("Particiones: " + factor);
- factor = factor == 0 ? 1 : factor;
- int tasks = (int) Math.ceil(listSize / factor);
- System.out.println("Tareas necesarias: " + tasks);
- ThreadPool threadPool = new ThreadPool(4, workers);
- ConcurRadixSort concurRadixSort = new ConcurRadixSort(tasks, factor);
- concurRadixSort.setNumbers(initialNumbers);
- System.out.println("Numeros particionados: " + concurRadixSort.chopped(initialNumbers, factor));
- for (int bit = 0; bit < 32; ++bit) {
- System.out.println("Bit: " + bit);
- launchTasks(threadPool, concurRadixSort, bit, tasks);
- }
- stopThreadPool(threadPool);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement