java多線程實例項目 java多線程ExecutorService線程數(shù)量?
java多線程ExecutorService線程數(shù)量?添加了一個新的executors工廠類來生成線程池,如以下方法-public static executors service newfixedt
java多線程ExecutorService線程數(shù)量?
添加了一個新的executors工廠類來生成線程池,如以下方法
-public static executors service newfixedthreadpool(int nthreads)
-public static executors service newsinglethreadexecutor()這些方法的返回值是executorservice object,它表示線程池,可以執(zhí)行由可運行對象或可調用對象表示的線程。它提供以下方法:
-未來<?> submit(runnable task)
-<T> future<T> submit(callable<T>解決線程返回值問題最理想的方法是逐個線程通知調度線程。調度線程可以是主線程或特殊的調度線程。每當任務線程完成自己的工作時,它都會通知調度線程獲取結果。只有這樣,才能充分發(fā)揮多線程的優(yōu)勢,而不是坐以待斃。
如果您認為主線程是一個調度線程,并且您的主線程有一個消息循環(huán),那么使用消息是一個很好的通知方式。
任務線程完成工作后,會向主線程發(fā)送一條消息。在消息中,可以將任務線程本身(線程類)發(fā)送到主線程,然后從主線程中提取線程類,得到任務線程的處理結果。