@SankaSanka

Как переписать метод под многоядерный процессор?

метод отлично работает под два ядра. Как его размногопоточить чтоб он мог сколько угодно ядер загрузить? Количество ядер заранее не известно.
в таком виде он не хочет нагружать( Помогите пожалуйста. очень нужно.
private Map<String, String> makeAdreses() {
    
        Map<String, String> adresWhisW = new ConcurrentHashMap();
        Thread thread = new Thread(new IndexedRandomThread(adresWhisW));
        thread.start();
        for (int i = 0; i < 1000; i++) {
                t=//громоздкие вычисления которые нельзя разделить на части;
            adresWhisW( t, i);
        }
 
        try {
            thread.join();
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
        return adresWhisW;
    }
 
 
    public class IndexedRandomThread implements Runnable {
        private Map<String, String> outputMap;
 
        public IndexedRandomThread(Map<String, String> outputMap) {
            this.outputMap = outputMap;
        }
 
        @Override
        public void run() {
            for (int i = 2000; i < 3000; i++) {
                t=//громоздкие вычисления которые нельзя разделить на части
            outputMap.put( t, i);
 
            }
        }
    }
  • Вопрос задан
  • 108 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы