Я написал параллельный код Mergesort с настройкой по умолчанию 5 потоков и длиной массива 1 000 000, и я убедился, что приложение можно запустить из командной строки через ant start.Как перезаписать программу Java через командную строку
Теперь моя проблема в том, что я также должен предоставить небольшую командную строку для перезаписи максимального номера потока и длины массива с помощью параметров команды с консоли.
Вопрос: как я могу это сделать, и для этого мне нужно отредактировать мой основной код или файл build.xml или просто команду, например, перейти к главному, изменить это и что?
Main выглядит следующим образом:
public class Main {
public static void main(String[] args) throws InterruptedException {
int nThreads=5;
int[] original = new int[1000000];
for (int i=0; i<original.length; i++) {
original[i] = (int) (Math.random()*9);
}
Mergesorts worker = new Mergesorts(original,nThreads);
System.out.println("ressource: 1 of 5 thread(s) used");
Thread w = new Thread(worker);
w.start();
w.join();
}}
и тот мой build.xml файл:
<?xml version="1.0" encoding="UTF-8"?>
<project default="start" name="Mergesort-compile and run">
<target name="compile">
<javac includeantruntime="false" srcdir="./src" destdir="Mergesort" />
</target>
<target name="start" depends="compile">
<java classname="Main">
<classpath path="Mergesort"/>
</java>
</target>
Передайте номер потока в качестве аргумента программы, а затем получить его из 'args' массива, разобрать он в int и устанавливает поток. –