3
호출 가능 스레드의 우선 순위를 지정해야하는 스레드 태스크에서 작업 중입니다.호출 가능 유형 스레드의 우선 순위 할당
여기 내 코드입니다.
public void processURL(String[] synchronous, String[] asynchronous) {
ExecutorService es = Executors.newFixedThreadPool(NTHREADS);
for (int i = 0; i < asynchronous.length; i++) {
es.execute(new TaskAsyn("Asynchronous Task: " + i, asynchronous[i],
waiting));
}
List<Future<ToStore>> futures = new ArrayList<Future<ToStore>>();
for (int i = 0; i < synchronous.length; i++) {
Future<ToStore> future = es.submit(new TaskSynch(
"synchronous Task: " + i, synchronous[i], waiting));
futures.add(future);
}
for (Future<ToStore> future : futures) {
try {
ToStore s = future.get();
// TODO
System.out.println("Synchronous Task: " + s.getUrl()
+ " has finished.");
} catch (InterruptedException e) {
e.printStackTrace();
} catch (ExecutionException e) {
e.printStackTrace();
}
}
System.out.println("here");
}
동기식은 향후 결과를 얻기 위해 호출 가능한 스레드에서 실행됩니다. 비동기가 실행 가능한 스레드에서 실행 중입니다.
비동기 호출 가능 스레드도 만들 수 있으므로 요점은 아니므로 ExecuterService
스레드를 우선 순위로 할당하는 방법은 내 유일한 문제입니다.