public class Executors extends Object
ExecutorãExecutorServiceãScheduledExecutorServiceãThreadFactoryãããã³Callableã¯ã©ã¹çšã®ãã¡ã¯ããªããã³ãŠãŒãã£ãªãã£ã»ã¡ãœããã§ãã ãã®ã¯ã©ã¹ã¯ã次ã®çš®é¡ã®ã¡ãœããããµããŒãããŸãã
ExecutorServiceãäœæããŠè¿ãã¡ãœããã
ScheduledExecutorServiceãäœæããŠè¿ãã¡ãœããã
ThreadFactoryãäœæããŠè¿ãã¡ãœããã
ãå¿
èŠãšããå®è¡ã¡ãœããã§äœ¿çšã§ããããã«ãã¯ããŒãžã£ã«äŒŒãã»ãã®åœ¢åŒããCallableãäœæããŠè¿ãã¡ãœããã
| 修食åãšå | ã¡ãœãã | 説æ |
|---|---|---|
static Callable<Object> |
callable(PrivilegedAction<?> action) |
åŒåºãæã«ãæå®ãããç¹æš©ä»ãã¢ã¯ã·ã§ã³ãå®è¡ãããã®çµæãè¿ãã
Callableãªããžã§ã¯ããè¿ããŸãã |
static Callable<Object> |
callable(PrivilegedExceptionAction<?> action) |
åŒåºãæã«ãæå®ãããç¹æš©ä»ãäŸå€ã¢ã¯ã·ã§ã³ãå®è¡ãããã®çµæãè¿ãã
Callableãªããžã§ã¯ããè¿ããŸãã |
static Callable<Object> |
callable(Runnable task) |
åŒåºãæã«ãæå®ãããã¿ã¹ã¯ãå®è¡ããnull
ãè¿ããCallableãªããžã§ã¯ããè¿ããŸãã |
static <T> Callable<T> |
callable(Runnable task, T result) |
åŒåºãæã«ãæå®ãããã¿ã¹ã¯ãå®è¡ããæå®ãããçµæãè¿ãã
Callableãªããžã§ã¯ããè¿ããŸãã |
static ThreadFactory |
defaultThreadFactory() |
æ°èŠã¹ã¬ããã®äœæã«äœ¿çšããããã©ã«ãã®ã¹ã¬ããã»ãã¡ã¯ããªãè¿ããŸãã
|
static ExecutorService |
newCachedThreadPool() |
å¿
èŠã«å¿ããæ°èŠã¹ã¬ãããäœæããã¹ã¬ããã»ããŒã«ãäœæããŸãããå©çšå¯èœãªå Žåã«ã¯ä»¥åã«æ§ç¯ãããã¹ã¬ãããåå©çšããŸãã
|
static ExecutorService |
newCachedThreadPool(ThreadFactory threadFactory) |
å¿
èŠã«å¿ããæ°èŠã¹ã¬ãããäœæããã¹ã¬ããã»ããŒã«ãäœæããŸãããå©çšå¯èœãªå Žåã«ã¯ä»¥åã«æ§ç¯ãããã¹ã¬ãããåå©çšããŸãããŸããå¿
èŠã«å¿ããæå®ãããThreadFactoryã䜿çšããŠæ°èŠã¹ã¬ãããäœæããŸãã
|
static ExecutorService |
newFixedThreadPool(int nThreads) |
å
±æã¢ã³ããŠã³ã圢åŒã®ãã¥ãŒãªãã§åäœãããåºå®æ°ã®ã¹ã¬ãããåå©çšããã¹ã¬ããã»ããŒã«ãäœæããŸãã
|
static ExecutorService |
newFixedThreadPool(int nThreads, ThreadFactory threadFactory) |
å
±æã¢ã³ããŠã³ã圢åŒã®ãã¥ãŒãªãã§åäœãããåºå®æ°ã®ã¹ã¬ãããåå©çšããã¹ã¬ããã»ããŒã«ãäœæããŸããå¿
èŠã«å¿ããæå®ãããThreadFactoryã䜿çšããŠæ°èŠã¹ã¬ãããäœæããŸãã
|
static ScheduledExecutorService |
newScheduledThreadPool(int corePoolSize) |
æå®ãããé
å»¶æéåŸããŸãã¯åšæçã«ã³ãã³ãã®å®è¡ãã¹ã±ãžã¥ãŒã«ã§ãããã¹ã¬ããã»ããŒã«ãäœæããŸãã
|
static ScheduledExecutorService |
newScheduledThreadPool(int corePoolSize, ThreadFactory threadFactory) |
æå®ãããé
å»¶æéåŸããŸãã¯åšæçã«ã³ãã³ãã®å®è¡ãã¹ã±ãžã¥ãŒã«ã§ãããã¹ã¬ããã»ããŒã«ãäœæããŸãã
|
static ExecutorService |
newSingleThreadExecutor() |
ã¢ã³ããŠã³ã圢åŒã®ãã¥ãŒãªãã§åäœãããåäžã®ã¯ãŒã«ãŒã»ã¹ã¬ããã䜿çšããexecutorãäœæããŸãã
|
static ExecutorService |
newSingleThreadExecutor(ThreadFactory threadFactory) |
ã¢ã³ããŠã³ã圢åŒã®ãã¥ãŒãªãã§åäœãããåäžã®ã¯ãŒã«ãŒã»ã¹ã¬ããã䜿çšããexecutorãäœæããŸããå¿
èŠã«å¿ããŠãæå®ãããThreadFactoryã䜿çšããŠæ°èŠã¹ã¬ãããäœæããŸãã
|
static ScheduledExecutorService |
newSingleThreadScheduledExecutor() |
æå®ãããé
å»¶æéåŸããŸãã¯åšæçã«ã³ãã³ãã®å®è¡ãã¹ã±ãžã¥ãŒã«ã§ãããåäžã¹ã¬ããã®executorãäœæããŸãã
|
static ScheduledExecutorService |
newSingleThreadScheduledExecutor(ThreadFactory threadFactory) |
æå®ãããé
å»¶æéåŸããŸãã¯åšæçã«ã³ãã³ãã®å®è¡ãã¹ã±ãžã¥ãŒã«ã§ãããåäžã¹ã¬ããã®executorãäœæããŸãã
|
static ExecutorService |
newWorkStealingPool() |
ãã¹ãŠã®
䜿çšå¯èœãªããã»ããµãã¿ãŒã²ããäžŠåæ§ã¬ãã«ãšããŠäœ¿çšããŠãwork-stealingã¹ã¬ããã»ããŒã«ãäœæããŸãã |
static ExecutorService |
newWorkStealingPool(int parallelism) |
æå®ãããäžŠåæ§ã¬ãã«ããµããŒãããã®ã«ååãªæ°ã®ã¹ã¬ãããä¿æããã¹ã¬ããã»ããŒã«ãäœæããå Žåã«ãã£ãŠã¯ç«¶åãæžããããã«è€æ°ã®ãã¥ãŒã䜿çšããŸãã
|
static <T> Callable<T> |
privilegedCallable(Callable<T> callable) |
åŒåºãæã«ãçŸåšã®ã¢ã¯ã»ã¹å¶åŸ¡ã³ã³ããã¹ãã§æå®ãããcallable
ãå®è¡ãããCallableãªããžã§ã¯ããè¿ããŸãã |
static <T> Callable<T> |
privilegedCallableUsingCurrentClassLoader(Callable<T> callable) |
åŒåºãæã«ãçŸåšã®ã¢ã¯ã»ã¹å¶åŸ¡ã³ã³ããã¹ãã§ãçŸåšã®ã³ã³ããã¹ãã»ã¯ã©ã¹ã»ããŒããŒãã³ã³ããã¹ãã»ã¯ã©ã¹ã»ããŒããŒãšãããæå®ãããcallable
ãå®è¡ãããCallableãªããžã§ã¯ããè¿ããŸãã |
static ThreadFactory |
privilegedThreadFactory() |
çŸåšã®ã¹ã¬ãããšåãã¢ã¯ã»ã¹æš©ãæã€æ°èŠã¹ã¬ãããäœæããããã«äœ¿çšããã¹ã¬ããã»ãã¡ã¯ããªãè¿ããŸãã
|
static ExecutorService |
unconfigurableExecutorService(ExecutorService executor) |
å®çŸ©æžã¿ã®ãã¹ãŠã®
ExecutorServiceã¡ãœãããæå®ãããexecutorã«å§è²ãããããã£ã¹ãã䜿çšããŠã¢ã¯ã»ã¹å¯èœãªã»ãã®ã¡ãœããã¯å§è²ããªããªããžã§ã¯ããè¿ããŸãã |
static ScheduledExecutorService |
unconfigurableScheduledExecutorService(ScheduledExecutorService executor) |
å®çŸ©æžã¿ã®ãã¹ãŠã®
ScheduledExecutorServiceã¡ãœãããæå®ãããexecutorã«å§è²ãããããã£ã¹ãã䜿çšããŠã¢ã¯ã»ã¹å¯èœãªã»ãã®ã¡ãœããã¯å§è²ããªããªããžã§ã¯ããè¿ããŸãã |
public static ExecutorService newFixedThreadPool(int nThreads)
nThreadsã®ã¹ã¬ãããã¢ã¯ãã£ããªåŠçã¿ã¹ã¯ã«ãªããŸãã ãã¹ãŠã®ã¹ã¬ãããã¢ã¯ãã£ããªå Žåã«ã远å ã®ã¿ã¹ã¯ãéä¿¡ããããšããããã®ã¿ã¹ã¯ã¯ã¹ã¬ããã䜿çšå¯èœã«ãªããŸã§ãã¥ãŒã§åŸ
æ©ããŸãã å®è¡äžã«çºçããé害ã®ããã«ãããããã®ã¹ã¬ãããã·ã£ããããŠã³åã«çµäºããå Žåã¯ãå¿
èŠã«å¿ããŠæ°èŠã¹ã¬ãããåŒãç¶ãã§åŸç¶ã®ã¿ã¹ã¯ãå®è¡ããŸãã æç€ºçãªshutdownãè¡ããããŸã§ã¯ãã¹ã¬ããã¯ããŒã«å
ã«ååšããŸãã nThreads - ããŒã«å
ã®ã¹ã¬ããæ°IllegalArgumentException - nThreads <= 0ã®å Žåpublic static ExecutorService newWorkStealingPool(int parallelism)
parallelism - ã¿ãŒã²ããäžŠåæ§ã¬ãã«IllegalArgumentException - parallelism <= 0ã®å Žåpublic static ExecutorService newWorkStealingPool()
䜿çšå¯èœãªããã»ããµãã¿ãŒã²ããäžŠåæ§ã¬ãã«ãšããŠäœ¿çšããŠãwork-stealingã¹ã¬ããã»ããŒã«ãäœæããŸããnewWorkStealingPool(int)public static ExecutorService newFixedThreadPool(int nThreads, ThreadFactory threadFactory)
nThreadsã®ã¹ã¬ãããã¢ã¯ãã£ããªåŠçã¿ã¹ã¯ã«ãªããŸãã ãã¹ãŠã®ã¹ã¬ãããã¢ã¯ãã£ããªå Žåã«ã远å ã®ã¿ã¹ã¯ãéä¿¡ããããšããããã®ã¿ã¹ã¯ã¯ã¹ã¬ããã䜿çšå¯èœã«ãªããŸã§ãã¥ãŒã§åŸ
æ©ããŸãã å®è¡äžã«çºçããé害ã®ããã«ãããããã®ã¹ã¬ãããã·ã£ããããŠã³åã«çµäºããå Žåã¯ãå¿
èŠã«å¿ããŠæ°èŠã¹ã¬ãããåŒãç¶ãã§åŸç¶ã®ã¿ã¹ã¯ãå®è¡ããŸãã æç€ºçãªshutdownãè¡ããããŸã§ã¯ãã¹ã¬ããã¯ããŒã«å
ã«ååšããŸãã nThreads - ããŒã«å
ã®ã¹ã¬ããæ°threadFactory - æ°èŠã¹ã¬ããã®äœææã«äœ¿çšãããã¡ã¯ããªNullPointerException - threadFactoryãnullã®å ŽåIllegalArgumentException - nThreads <= 0ã®å Žåpublic static ExecutorService newSingleThreadExecutor()
newFixedThreadPool(1)ãšã¯ç°ãªããè¿ãããexecutorã§ã¯åæ§æã«ãã远å ã¹ã¬ããã®äœ¿çšã¯äžå¯èœã§ããããšãä¿èšŒãããŠããŸãã public static ExecutorService newSingleThreadExecutor(ThreadFactory threadFactory)
newFixedThreadPool(1, threadFactory)ãšã¯ç°ãªããè¿ããããšã°ãŒãã¥ãŒã¿ã§ã¯åæ§æã«ãã远å ã¹ã¬ããã®äœ¿çšã¯äžå¯èœã§ããããšãä¿èšŒãããŠããŸãã threadFactory - æ°èŠã¹ã¬ããã®äœææã«äœ¿çšãããã¡ã¯ããªNullPointerException - threadFactoryãnullã®å Žåpublic static ExecutorService newCachedThreadPool()
executeãåŒã³åºããšã以åã«æ§ç¯ãããã¹ã¬ãããå©çšå¯èœã§ããã°ããããåå©çšããŸãã æ¢åã®ã¹ã¬ããã䜿çšã§ããªãå Žåãæ°ããæ¥ç¶ãäœæãããããŒã«ã«è¿œå ãããŸãã 60ç§é䜿çšãããªãã£ãã¹ã¬ããã¯ãçµäºããŠããã£ãã·ã¥ããåé€ãããŸãã ãã®ãããé·ãéã¢ã€ãã«ç¶æ
ã®ããŒã«ã«ãããªãœãŒã¹ãæ¶è²»ãããããšã¯ãããŸããã é¡äŒŒã®ããããã£ãæã€ãã詳现ã®ç°ãªãããŒã«(timeoutãã©ã¡ãŒã¿ãªã©)ã¯ãThreadPoolExecutorã³ã³ã¹ãã©ã¯ã¿ã䜿çšããŠäœæã§ããŸãã public static ExecutorService newCachedThreadPool(ThreadFactory threadFactory)
threadFactory - æ°èŠã¹ã¬ããã®äœææã«äœ¿çšãããã¡ã¯ããªNullPointerException - threadFactoryãnullã®å Žåpublic static ScheduledExecutorService newSingleThreadScheduledExecutor()
newScheduledThreadPool(1)ãšã¯ç°ãªããè¿ãããexecutorã§ã¯åæ§æã«ãã远å ã¹ã¬ããã®äœ¿çšã¯äžå¯èœã§ããããšãä¿èšŒãããŠããŸãã public static ScheduledExecutorService newSingleThreadScheduledExecutor(ThreadFactory threadFactory)
newScheduledThreadPool(1, threadFactory)ãšã¯ç°ãªããè¿ãããexecutorã§ã¯åæ§æã«ãã远å ã¹ã¬ããã®äœ¿çšã¯äžå¯èœã§ããããšãä¿èšŒãããŠããŸãã threadFactory - æ°èŠã¹ã¬ããã®äœææã«äœ¿çšãããã¡ã¯ããªNullPointerException - threadFactoryãnullã®å Žåpublic static ScheduledExecutorService newScheduledThreadPool(int corePoolSize)
corePoolSize - ã¢ã€ãã«ã§ãã£ãŠãããŒã«å
ã«ç¶æãããã¹ã¬ããã®æ°ãIllegalArgumentException - corePoolSize < 0ã®å Žåpublic static ScheduledExecutorService newScheduledThreadPool(int corePoolSize, ThreadFactory threadFactory)
corePoolSize - ã¢ã€ãã«ã§ãã£ãŠãããŒã«å
ã«ç¶æãããã¹ã¬ããã®æ°ãthreadFactory - executorãæ°ããã¹ã¬ãããäœæãããšãã«äœ¿çšãããã¡ã¯ããªIllegalArgumentException - corePoolSize < 0ã®å ŽåNullPointerException - threadFactoryãnullã®å Žåpublic static ExecutorService unconfigurableExecutorService(ExecutorService executor)
ExecutorServiceã¡ãœãããæå®ãããexecutorã«å§è²ãããããã£ã¹ãã䜿çšããŠã¢ã¯ã»ã¹å¯èœãªã»ãã®ã¡ãœããã¯å§è²ããªããªããžã§ã¯ããè¿ããŸãã ããã«ãããæ§æãå®å
šã«ãããªãŒãºãããæå®ãããå
·è±¡å®è£
ã®ãã¥ãŒãã³ã°ãèš±å¯ããªãããã«ã§ããŸãã executor - åºã«ãªãå®è£
ExecutorServiceã€ã³ã¹ã¿ã³ã¹NullPointerException - executorãnullã®å Žåpublic static ScheduledExecutorService unconfigurableScheduledExecutorService(ScheduledExecutorService executor)
ScheduledExecutorServiceã¡ãœãããæå®ãããexecutorã«å§è²ãããããã£ã¹ãã䜿çšããŠã¢ã¯ã»ã¹å¯èœãªã»ãã®ã¡ãœããã¯å§è²ããªããªããžã§ã¯ããè¿ããŸãã ããã«ãããæ§æãå®å
šã«ãããªãŒãºãããæå®ãããå
·è±¡å®è£
ã®ãã¥ãŒãã³ã°ãèš±å¯ããªãããã«ã§ããŸãã executor - åºã«ãªãå®è£
ScheduledExecutorServiceã€ã³ã¹ã¿ã³ã¹NullPointerException - executorãnullã®å Žåpublic static ThreadFactory defaultThreadFactory()
ThreadGroupå
ã®ãšã°ãŒãã¥ãŒã¿ã«ãã£ãŠäœ¿çšããããã¹ãŠã®æ°ããã¹ã¬ãããäœæããŸãã SecurityManagerãååšããå Žåã¯System.getSecurityManager()ã®ã°ã«ãŒãã䜿çšãããã以å€ã®å Žåã¯ããã®defaultThreadFactoryã¡ãœãããåŒã³åºãã¹ã¬ããã®ã°ã«ãŒãã䜿çšããŸãã åæ°èŠã¹ã¬ããã¯ãéããŒã¢ã³ã»ã¹ã¬ãããšããŠäœæãããŸãããŸããã¹ã¬ããã®åªå
é äœã¯ãThread.NORM_PRIORITYãŸãã¯ã¹ã¬ããã»ã°ã«ãŒãã®æé«èš±å®¹åªå
é äœã®ããããå°ããæ¹ã«èšå®ãããŸãã æ°ããã¹ã¬ããã«ã¯ãThread.getName()ã䜿çšããŠã¢ã¯ã»ã¹ã§ããpool-N-thread-Mãšããååãä»ããããŸããããã§ãNã¯ãã®ãã¡ã¯ããªã®ã·ãŒã±ã³ã¹çªå·ã§ãããMã¯ãã®ãã¡ã¯ããªã«ãã£ãŠäœæãããã¹ã¬ããã®ã·ãŒã±ã³ã¹çªå·ã§ãã public static ThreadFactory privilegedThreadFactory()
defaultThreadFactory()ãšåãèšå®ãæã€ã¹ã¬ãããäœæããŸããããã«ãæ°ããã¹ã¬ããã®AccessControlContextãšcontextClassLoaderããã®privilegedThreadFactoryã¡ãœãããåŒã³åºãã¹ã¬ãããšåãã«ãªãããã«èšå®ããŸãã æ°ããprivilegedThreadFactoryã¯ãAccessController.doPrivilegedã¢ã¯ã·ã§ã³å
ã§äœæã§ããŸãããã®éãçŸåšã®ã¹ã¬ããã®ã¢ã¯ã»ã¹å¶åŸ¡ã³ã³ããã¹ããèšå®ããŠãã¢ã¯ã·ã§ã³å
ã«éžæããã¢ã¯ã»ã¹æš©èšå®ãä¿æããã¹ã¬ãããäœæããŸãã
ãã®ãããªã¹ã¬ããå
ã§å®è¡äžã®ã¿ã¹ã¯ã«ã¯çŸåšã®ã¹ã¬ãããšåãã¢ã¯ã»ã¹å¶åŸ¡ããã³ã¯ã©ã¹ã»ããŒããŒèšå®ãå²ãåœãŠãããŸããããããã®ã¿ã¹ã¯ã®ThreadLocalãŸãã¯InheritableThreadLocalå€ãåãã§ããå¿
èŠã¯ãªãããšã«æ³šæããŠãã ããã å¿
èŠãªå Žåã¯ãThreadPoolExecutor.beforeExecute(Thread, Runnable)ã䜿çšããŠThreadPoolExecutorãµãã¯ã©ã¹ã§ããããã®ã¿ã¹ã¯ãå®è¡ãããåã«ãã¹ã¬ããã»ããŒã«ã«ã®ç¹å®ã®å€ãèšå®ãŸãã¯ãªã»ããã§ããŸãã ãŸããã¯ãŒã«ãŒã»ã¹ã¬ãããåæåããŠãã»ãã®æå®ãããã¹ã¬ãããšåãInheritableThreadLocalèšå®ã«ããããšãå¿
èŠãªå Žåãã«ã¹ã¿ã ThreadFactoryãäœæããå
éšã§å€ãç¶æ¿ããã»ãã®ã¹ã¬ããã®äœæã®èŠæ±ãã¹ã¬ãããåŸ
æ©ããã³åŠçããããã«ã§ããŸãã
AccessControlException - çŸåšã®ã¢ã¯ã»ã¹å¶åŸ¡ã³ã³ããã¹ãã«ãã³ã³ããã¹ãã»ã¯ã©ã¹ã»ããŒããŒã®ååŸãšèšå®ã®äž¡æ¹ãè¡ãããã®ã¢ã¯ã»ã¹æš©ããªãå Žåpublic static <T> Callable<T> callable(Runnable task, T result)
Callableãªããžã§ã¯ããè¿ããŸãã ããã¯ãCallableãå¿
èŠãšããã¡ãœããããã»ãã®æ¹æ³ã§ã¯çµæã®åºãªãã¢ã¯ã·ã§ã³ã«é©çšãããšãã«åœ¹ç«ã€å ŽåããããŸãã T - çµæã®åtask - å®è¡ããã¿ã¹ã¯result - è¿ãçµæNullPointerException - ã¿ã¹ã¯ãnullã®å Žåpublic static Callable<Object> callable(Runnable task)
ãè¿ããCallableãªããžã§ã¯ããè¿ããŸããtask - å®è¡ããã¿ã¹ã¯NullPointerException - ã¿ã¹ã¯ãnullã®å Žåpublic static Callable<Object> callable(PrivilegedAction<?> action)
Callableãªããžã§ã¯ããè¿ããŸããaction - å®è¡ããç¹æš©ä»ãã¢ã¯ã·ã§ã³NullPointerException - ã¢ã¯ã·ã§ã³ãnullã®å Žåpublic static Callable<Object> callable(PrivilegedExceptionAction<?> action)
Callableãªããžã§ã¯ããè¿ããŸããaction - å®è¡ããç¹æš©ä»ãäŸå€ã¢ã¯ã·ã§ã³NullPointerException - ã¢ã¯ã·ã§ã³ãnullã®å Žåpublic static <T> Callable<T> privilegedCallable(Callable<T> callable)
ãå®è¡ãããCallableãªããžã§ã¯ããè¿ããŸãã éåžžããã®ã¡ãœããã¯ãAccessController.doPrivilegedã¢ã¯ã·ã§ã³å
ã§åŒã³åºãããŠåŒåºãå¯èœã¬ã€ã¢ãŠããäœæããŸãããã®åŒåºãå¯èœã¬ã€ã¢ãŠãã¯ãå¯èœãªå Žåã¯ãã®ã¢ã¯ã·ã§ã³å
ã«ä¿æãããŠããéžæããã¢ã¯ã»ã¹æš©èšå®ã«åŸã£ãŠå®è¡ãããå¯èœã§ãªãå Žåã¯é¢é£ä»ããããAccessControlExceptionãã¹ããŒããŸãã T - åŒåºãå¯èœã¿ã¹ã¯ã®çµæã®åcallable - åºæ¬ãšãªãã¿ã¹ã¯NullPointerException - åŒåºãå¯èœã¬ã€ã¢ãŠããnullã®å Žåpublic static <T> Callable<T> privilegedCallableUsingCurrentClassLoader(Callable<T> callable)
ãå®è¡ãããCallableãªããžã§ã¯ããè¿ããŸãã éåžžããã®ã¡ãœããã¯ãAccessController.doPrivilegedã¢ã¯ã·ã§ã³å
ã§åŒã³åºãããŠåŒåºãå¯èœã¬ã€ã¢ãŠããäœæããŸãããã®åŒåºãå¯èœã¬ã€ã¢ãŠãã¯ãå¯èœãªå Žåã¯ãã®ã¢ã¯ã·ã§ã³å
ã«ä¿æãããŠããéžæããã¢ã¯ã»ã¹æš©èšå®ã«åŸã£ãŠå®è¡ãããå¯èœã§ãªãå Žåã¯é¢é£ä»ããããAccessControlExceptionãã¹ããŒããŸãã T - åŒåºãå¯èœã¿ã¹ã¯ã®çµæã®åcallable - åºæ¬ãšãªãã¿ã¹ã¯NullPointerException - åŒåºãå¯èœã¬ã€ã¢ãŠããnullã®å ŽåAccessControlException - çŸåšã®ã¢ã¯ã»ã¹å¶åŸ¡ã³ã³ããã¹ãã«ãã³ã³ããã¹ãã»ã¯ã©ã¹ã»ããŒããŒã®èšå®ãšååŸã®äž¡æ¹ãè¡ãããã®ã¢ã¯ã»ã¹æš©ããªãå Žå ãã°ãŸãã¯æ©èœãéä¿¡
詳现ãªAPIãªãã¡ã¬ã³ã¹ããã³éçºè
ããã¥ã¡ã³ãã«ã€ããŠã¯ãJava SEã®ããã¥ã¡ã³ããåç
§ããŠãã ããã ãã®ããã¥ã¡ã³ãã«ã¯ãæŠå¿µçãªæŠèŠãçšèªã®å®çŸ©ãåé¿æ¹æ³ãæå¹ãªã³ãŒãäŸãªã©ã®ãéçºè
ã察象ã«ãããã詳现ãªèª¬æãå«ãŸããŠããŸãã
Copyright © 1993, 2025, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Documentation Redistribution Policyãåç
§ããŠãã ããã