public class Runtime extends Object
Runtimeã¯ã©ã¹ã®åäžã®ã€ã³ã¹ã¿ã³ã¹ãæã¡ãŸãããã®ã¯ã©ã¹ã¯ãã¢ããªã±ãŒã·ã§ã³ãšã¢ããªã±ãŒã·ã§ã³å®è¡ç°å¢ãšã®ã€ã³ã¿ãã§ãŒã¹ã«ãªããŸãã çŸåšã®Runtimeãªããžã§ã¯ãã¯ãgetRuntimeã¡ãœããã«ããååŸã§ããŸãã
ã¢ããªã±ãŒã·ã§ã³ã¯ããã®ã¯ã©ã¹ã®ç¬èªã®ã€ã³ã¹ã¿ã³ã¹ãçæããããšã¯ã§ããŸããã
getRuntime()| 修食åãšå | ã¡ãœãã | 説æ |
|---|---|---|
void |
addShutdownHook(Thread hook) |
æ°ããä»®æ³ãã·ã³ã®ã·ã£ããããŠã³ã»ããã¯ãç»é²ããŸãã
|
int |
availableProcessors() |
Javaä»®æ³ãã·ã³ã䜿çšã§ããããã»ããµã®æ°ãè¿ããŸãã
|
Process |
exec(String command) |
æå®ãããæååã³ãã³ãããç¬ç«ããããã»ã¹ã§å®è¡ããŸãã
|
Process |
exec(String[] cmdarray) |
æå®ãããã³ãã³ããšåŒæ°ããç¬ç«ããããã»ã¹ã§å®è¡ããŸãã
|
Process |
exec(String[] cmdarray, String[] envp) |
æå®ãããã³ãã³ããšåŒæ°ããæå®ãããç°å¢ãæã€ç¬ç«ããããã»ã¹ã§å®è¡ããŸãã
|
Process |
exec(String[] cmdarray, String[] envp, File dir) |
æå®ãããã³ãã³ããšåŒæ°ããæå®ãããç°å¢ãšäœæ¥ãã£ã¬ã¯ããªãæã€ç¬ç«ããããã»ã¹ã§å®è¡ããŸãã
|
Process |
exec(String command, String[] envp) |
æå®ãããæååã³ãã³ãããæå®ãããç°å¢ãæã€ç¬ç«ããããã»ã¹ã§å®è¡ããŸãã
|
Process |
exec(String command, String[] envp, File dir) |
æå®ãããæååã³ãã³ãããæå®ãããç°å¢ãšäœæ¥ãã£ã¬ã¯ããªãæã€ç¬ç«ããããã»ã¹ã§å®è¡ããŸãã
|
void |
exit(int status) |
çŸåšå®è¡ããŠããJavaä»®æ³ãã·ã³ããã·ã£ããããŠã³ã»ã·ãŒã±ã³ã¹ãéå§ããŠçµäºããŸãã
|
long |
freeMemory() |
Javaä»®æ³ãã·ã³å
ã®ç©ºãã¡ã¢ãªãŒã®éãè¿ããŸãã
|
void |
gc() |
ã¬ããŒãžã»ã³ã¬ã¯ã¿ãå®è¡ããŸãã
|
InputStream |
getLocalizedInputStream(InputStream in) |
éæšå¥šã
JDK 1.1以éãããŒã«ã«ãªãšã³ã³ãŒãã£ã³ã°ã®ãã€ãã»ã¹ããªãŒã ãUnicodeã®æåã¹ããªãŒã ã«å€æããã«ã¯ã
InputStreamReaderããã³BufferedReaderã¯ã©ã¹ã䜿ãããšãæšå¥šãããŠããŸãã |
OutputStream |
getLocalizedOutputStream(OutputStream out) |
éæšå¥šã
JDK 1.1以éãUnicodeã®æåã¹ããªãŒã ãããŒã«ã«ãªãšã³ã³ãŒãã£ã³ã°ã®ãã€ãã»ã¹ããªãŒã ã«å€æããã«ã¯ã
OutputStreamWriterãBufferedWriterãããã³PrintWriterã¯ã©ã¹ã䜿ãããšãæšå¥šãããŠããŸãã |
static Runtime |
getRuntime() |
çŸåšã®Javaã¢ããªã±ãŒã·ã§ã³ã«é¢é£ããRuntimeãªããžã§ã¯ããè¿ããŸãã
|
void |
halt(int status) |
çŸåšå®è¡äžã®Javaä»®æ³ãã·ã³ã匷å¶çµäºããŸãã
|
void |
load(String filename) |
filenameåŒæ°ã«ãã£ãŠæå®ããããã€ãã£ãã»ã©ã€ãã©ãªãããŒãããŸãã
|
void |
loadLibrary(String libname) |
åŒæ°
libnameã«ãã£ãŠæå®ããããã€ãã£ãã»ã©ã€ãã©ãªãããŒãããŸãã |
long |
maxMemory() |
Javaä»®æ³ãã·ã³ã䜿çšã詊ã¿ãæå€§ã¡ã¢ãªãŒå®¹éãè¿ããŸãã
|
boolean |
removeShutdownHook(Thread hook) |
ãã§ã«ç»é²ããä»®æ³ãã·ã³ã®ã·ã£ããããŠã³ã»ããã¯ãç»é²è§£é€ããŸãã
|
void |
runFinalization() |
ãã¡ã€ãã©ã€ãºãä¿çããŠãããªããžã§ã¯ãã®ãã¡ã€ãã©ã€ãºã»ã¡ãœãããå®è¡ããŸãã
|
static void |
runFinalizersOnExit(boolean value) |
éæšå¥šã
ãã®ã¡ãœããã¯ãããšããšçµäºæã«ãã¡ã€ãã©ã€ã¶ã®å®è¡ãæå¹ãŸãã¯ç¡å¹ã«ããããã«èšèšãããŠããŸãã çµäºæã®ãã¡ã€ãã©ã€ã¶ã®å®è¡ã¯ãããã©ã«ãã§ã¯ç¡å¹ã«ãªã£ãŠããŸãã æå¹ã«ãããšããã¡ã€ãã©ã€ã¶ããŸã èªåèµ·åãããŠããªããã¹ãŠã®ãªããžã§ã¯ãã®ãã¡ã€ãã©ã€ã¶ã¯ãJavaã©ã³ã¿ã€ã ãçµäºããåã«å®è¡ãããŸãã ãã®åäœã¯æ¬è³ªçã«å®å
šã§ã¯ãããŸããã ãã¡ã€ãã©ã€ã¶ãã©ã€ãã»ãªããžã§ã¯ãã«å¯ŸããŠåŒã³åºãããçµæã«ãªãå¯èœæ§ãããããã®ãšãã«ã»ãã®ã¹ã¬ããããããã®ãªããžã§ã¯ãã䞊è¡ããŠæäœããŠãããšãåäœãç°åžžã«ãªããããããããã¯ãçºçããŸãã
|
long |
totalMemory() |
Javaä»®æ³ãã·ã³ã®ã¡ã¢ãªãŒã®ç·å®¹éãè¿ããŸãã
|
void |
traceInstructions(boolean on) |
åœä»€ã®ãã¬ãŒã¹ãæå¹ãŸãã¯ç¡å¹ã«ããŸãã
|
void |
traceMethodCalls(boolean on) |
ã¡ãœããåŒåºãã®ãã¬ãŒã¹ãæå¹ãŸãã¯ç¡å¹ã«ããŸãã
|
public static Runtime getRuntime()
Runtimeã¯ã©ã¹ã®ã¡ãœããã®ã»ãšãã©ã¯ã€ã³ã¹ã¿ã³ã¹ã»ã¡ãœããã§ãããçŸåšã®ã©ã³ã¿ã€ã ã»ãªããžã§ã¯ãã«å¯Ÿå¿ããŠåŒã³åºãããªããã°ãããŸããã Runtimeãªããžã§ã¯ããpublic void exit(int status)
ç»é²æžãã·ã£ããããŠã³ã»ããã¯ããããå Žåã¯ãæªæå®ã®é åºã§èµ·åããçµäºãããŸã§åæã«å®è¡ã§ããŸãã ãããè¡ããããšãä»®æ³ãã·ã³ã忢ããŸãã
ãã¹ãŠã®ã·ã£ããããŠã³ã»ããã¯ããã§ã«å®è¡ãããåŸã«ãã®ã¡ãœãããåŒã³åºãããã¹ããŒã¿ã¹ã0 (ãŒã)以å€ã«ãªã£ãå Žåããã®ã¡ãœããã¯æå®ãããã¹ããŒã¿ã¹ã»ã³ãŒãã§ä»®æ³ãã·ã³ã忢ããŸãã ãã以å€ã®å Žåããã®ã¡ãœããã¯ç¡æéã«ãããã¯ãããŸãã
System.exitã¡ãœããã¯ããã®ã¡ãœãããåŒã³åºãåŸæ¥ã®äŸ¿å©ãªææ®µã§ãã
status - çµäºã¹ããŒã¿ã¹ã éäŸããŒã以å€ã®ã¹ããŒã¿ã¹ã»ã³ãŒãã¯ç°åžžçµäºã瀺ãã SecurityException - ã»ãã¥ãªãã£ã»ãããŒãžã£ãååšãããã®checkExitã¡ãœãããæå®ãããã¹ããŒã¿ã¹ã§çµäºããããšãèš±å¯ããªãå ŽåSecurityException, SecurityManager.checkExit(int), addShutdownHook(java.lang.Thread), removeShutdownHook(java.lang.Thread), halt(int)public void addShutdownHook(Thread hook)
2çš®é¡ã®ã€ãã³ãã«å¿çããŠJavaä»®æ³ãã·ã³ãã·ã£ããããŠã³ããŸãã
exit (åçã«ãSystem.exit)ã¡ãœãããåŒã³åºããããšãããŸãã¯
^Cã®å
¥åãªã©ã«ãããŠãŒã¶ãŒå²ã蟌ã¿ãããŠãŒã¶ãŒã»ãã°ãªããŸãã¯ã·ã¹ãã ã»ã·ã£ããããŠã³ã®ãããªã·ã¹ãã å
šäœã®ã€ãã³ãã«å¿çããŠçµäº(terminate)ããŸãã
ã·ã£ããããŠã³ã»ããã¯ã¯åæåãããã ãã§èµ·åããŠããªãã¹ã¬ããã§ãã ä»®æ³ãã·ã³ãã·ã£ããããŠã³ã»ã·ãŒã±ã³ã¹ãéå§ãããšããã¹ãŠã®ç»é²æžã¿ã·ã£ããããŠã³ã»ããã¯ããæå®ãããŠããªãé åºã§èµ·åã䞊è¡ããŠå®è¡ããŸãã ãã¹ãŠã®ããã¯ãçµäºãããšãããã¯ã¯åæ¢ããŸãã exitã¡ãœãããåŒã³åºãããšã«ãã£ãŠã·ã£ããããŠã³ãéå§ãããå ŽåãéããŒã¢ã³ã»ã¹ã¬ãããšåæ§ã«ãããŒã¢ã³ã»ã¹ã¬ããã¯ã·ã£ããããŠã³ã»ã·ãŒã±ã³ã¹äžã«å®è¡ããç¶ããããšã«æ³šæããŠãã ããã
ã·ã£ããããŠã³ã»ã·ãŒã±ã³ã¹ãéå§ããããšã匷å¶çã«ä»®æ³ãã·ã³ãçµäºããhaltã¡ãœãããåŒã³åºãããšã«ãã£ãŠã®ã¿åæ¢ã·ãŒã±ã³ã¹ã忢ã§ããŸãã
ãã£ããã·ã£ããããŠã³ã»ã·ãŒã±ã³ã¹ãèµ·åãããšãæ°ããã·ã£ããããŠã³ã»ããã¯ãç»é²ãããã以åã«ç»é²ããããã¯ã®ç»é²ãè§£é€ãããããããšã¯ã§ããŸããã ãããã®æäœã®ããããã詊è¡ãããšãIllegalStateExceptionãã¹ããŒãããŸãã
ã·ã£ããããŠã³ã»ããã¯ã¯ä»®æ³ãã·ã³ã®ã©ã€ãã»ãµã€ã¯ã«ã®åŸ®åŠãªææã«èµ·åãããããã³ãŒãã£ã³ã°ããå Žåã¯æ°ãä»ããå¿ èŠããããŸãã ç¹ã«ãã¹ã¬ããã»ãŒãã«æžã蟌ãå¿ èŠããããã§ããããããããããã¯ãé¿ããå¿ èŠããããŸãã ã·ã£ããããŠã³ã»ããã¯ãç»é²ãããµãŒãã¹ããã®ã¿ã«ãããã·ã£ããããŠã³ãé²è¡äžã«ç»é²ããå¿ èŠããããŸãã AWTã€ãã³ãã»ãã£ã¹ãããã»ã¹ã¬ãããªã©ãã¹ã¬ããã»ããŒã¹ã®ãã®ä»ã®ãµãŒãã¹ã䜿çšããããšãããšããããããã¯ãçºçããããšããããŸãã
ã·ã£ããããŠã³ã»ããã¯ã¯è¿
éã«çµäºããå¿
èŠããããŸãã ããã°ã©ã ãexitãåŒã³åºããšãä»®æ³ãã·ã³ãããã«ã·ã£ããããŠã³ããŠçµäºããããšãäºæ³ãããŸãã ä»®æ³ãã·ã³ããŠãŒã¶ãŒã»ãã°ãªããŸãã¯ã·ã¹ãã ã»ã·ã£ããããŠã³ã§çµäºãããšãåºæ¬ãšãªããªãã¬ãŒãã£ã³ã°ã»ã·ã¹ãã ã¯ã·ã£ããããŠã³ãŸãã¯çµäºãããŸã§ã®äžå®æéãäžããŸãã ãããã£ãŠãã·ã£ããããŠã³ã»ããã¯äžã«ãŠãŒã¶ãŒãšã®å¯Ÿè©±åŠçããããé·æéã®èšç®ãããããšã¯ãèŠãã§ããŸããã
ãã£ãããããªãäŸå€ã¯ãä»ã®ã¹ã¬ãããšåæ§ã«ãã¹ã¬ããThreadGroupãªããžã§ã¯ãã®uncaughtExceptionã¡ãœãããåŒã³åºãããšã«ãã£ãŠãã·ã£ããããŠã³ã»ããã¯ã§åŠçãããŸãã ãã®ã¡ãœããã®ããã©ã«ãå®è£
ã§ã¯ãSystem.errãžã®äŸå€ã¹ã¿ãã¯ã»ãã¬ãŒã¹ãåºåããã¹ã¬ããã忢ããŸããä»®æ³ãã·ã³ã®çµäºãŸãã¯åæ¢ã¯ããŸããã
ãŸããªã±ãŒã¹ãšããŠãä»®æ³ãã·ã³ãç°åžžçµäºããããšããããŸããã€ãŸããã·ã£ããããŠã³ãæ£åžžã«è¡ãããã«å®è¡ãäžæ¢ãããå Žåã§ãã ããã¯ä»®æ³ãã·ã³ãå€éšã§åæ¢ãããå Žåã«èµ·ãããŸããããšãã°ãUnixã®å Žåã®SIGKILLã·ã°ãã«ãŸãã¯ãMicrosoft Windowsã®å Žåã®TerminateProcessã®åŒåºãããã®äŸã§ãã ä»®æ³ãã·ã³ã¯ãããšãã°ãå
éšããŒã¿æ§é ã®ç Žå£ãååšããªãã¡ã¢ãªãŒãžã®ã¢ã¯ã»ã¹ãªã©ã®ããã«ãã€ãã£ãã»ã¡ãœããã倱æããå Žåã«ãç°åžžçµäºããŸãã ä»®æ³ãã·ã³ãç°åžžçµäºãããšã·ã£ããããŠã³ã»ããã¯ã®å®è¡ã¯ä¿èšŒã§ããŸããã
hook - åæåãããŠãããèµ·åããŠããªãThreadãªããžã§ã¯ãIllegalArgumentException - æå®ããããã¯ããã§ã«ç»é²ãããŠããå Žåããããã¯ããã¯ããã§ã«å®è¡äžã§ããããŸãã¯å®è¡ãå®äºãããšå€å®ãããå ŽåIllegalStateException - ä»®æ³ãã·ã³ããã§ã«ã·ã£ããããŠã³é²è¡äžã§ããå ŽåSecurityException - ã»ãã¥ãªãã£ã»ãããŒãžã£ãååšããRuntimePermission("shutdownHooks")ãæåŠãããå ŽåremoveShutdownHook(java.lang.Thread), halt(int), exit(int)public boolean removeShutdownHook(Thread hook)
hook - åé€ããããã¯IllegalStateException - ä»®æ³ãã·ã³ããã§ã«ã·ã£ããããŠã³é²è¡äžã§ããå ŽåSecurityException - ã»ãã¥ãªãã£ã»ãããŒãžã£ãååšãããããRuntimePermission("shutdownHooks")ãæåŠããå ŽåaddShutdownHook(java.lang.Thread), exit(int)public void halt(int status)
ãã®ã¡ãœããã®äœ¿çšã«ã¯çްå¿ã®æ³šæãå¿
èŠã§ãã exitã¡ãœãããšã¯ç°ãªãããã®ã¡ãœããã¯ã·ã£ããããŠã³ã»ããã¯ãéå§ããŸããã ã·ã£ããããŠã³ã»ã·ãŒã±ã³ã¹ããã§ã«éå§ãããŠããå Žåããã®ã¡ãœããã¯å®è¡äžã®ã·ã£ããããŠã³ã»ããã¯ãåŸ
æ©ããã«äœæ¥ãçµäºããŸãã
status - çµäºã¹ããŒã¿ã¹ã éäŸããŒã以å€ã®ã¹ããŒã¿ã¹ã»ã³ãŒãã¯ç°åžžçµäºã瀺ãã exit (åçã«ãSystem.exit)ã¡ãœãããæ¢ã«åŒã³åºãããŠããå Žåããã®ã¹ããŒã¿ã¹ã»ã³ãŒãã¯ãã®ã¡ãœããã«æž¡ãããã¹ããŒã¿ã¹ã»ã³ãŒããäžæžãããŸãã SecurityException - ã»ãã¥ãªãã£ã»ãããŒãžã£ãååšãããã®checkExitã¡ãœãããæå®ãããã¹ããŒã¿ã¹ã§çµäºããããšãèš±å¯ããªãå Žåexit(int), addShutdownHook(java.lang.Thread), removeShutdownHook(java.lang.Thread)@Deprecated public static void runFinalizersOnExit(boolean value)
UnsupportedOperationExceptionãã¹ããŒããŸããvalue - ç¡èŠpublic Process exec(String command) throws IOException
ããã¯ãç°¡æã¡ãœããã§ãã exec(command)圢åŒã®åŒåºãã®åäœã¯ãåŒã³åºãexec(command, null, null)ãšãŸã£ããåãã«ãªããŸãã
command - æå®ãããã·ã¹ãã ã»ã³ãã³ããProcessãªããžã§ã¯ãSecurityException - ã»ãã¥ãªãã£ã»ãããŒãžã£ãååšãããã®checkExecã¡ãœããããµãããã»ã¹ã®äœæãèš±å¯ããªãå ŽåIOException - å
¥åºåãšã©ãŒãçºçããå ŽåNullPointerException - commandãnullã®å ŽåIllegalArgumentException - commandã空ã®å Žåexec(String[], String[], File), ProcessBuilderpublic Process exec(String command, String[] envp) throws IOException
ããã¯ãç°¡æã¡ãœããã§ãã exec(command, envp)圢åŒã®åŒåºãã®åäœã¯ãåŒã³åºãexec(command, envp, null)ãšãŸã£ããåãã«ãªããŸãã
command - æå®ãããã·ã¹ãã ã»ã³ãã³ããenvp - æååã®é
åãé
åã®åèŠçŽ ã¯ãname=valueãšãã圢åŒã§ç°å¢å€æ°èšå®ãä¿æããããŸãã¯ããµãããã»ã¹ãçŸåšã®ããã»ã¹ã®ç°å¢ãç¶æ¿ããå Žåã¯nullãProcessãªããžã§ã¯ãSecurityException - ã»ãã¥ãªãã£ã»ãããŒãžã£ãååšãããã®checkExecã¡ãœããããµãããã»ã¹ã®äœæãèš±å¯ããªãå ŽåIOException - å
¥åºåãšã©ãŒãçºçããå ŽåNullPointerException - commandãnullã®å ŽåããŸãã¯envpã®ããããã®èŠçŽ ãnullã®å ŽåIllegalArgumentException - commandã空ã®å Žåexec(String[], String[], File), ProcessBuilderpublic Process exec(String command, String[] envp, File dir) throws IOException
ããã¯ãç°¡æã¡ãœããã§ãã exec(command, envp, dir)圢åŒã®åŒåºãã®åäœã¯ãåŒã³åºãexec(cmdarray, envp, dir)ãšãŸã£ããåãã«ãªããŸã(cmdarrayã¯commandå
ã®ãã¹ãŠã®ããŒã¯ã³ãå«ãé
å)ã
ããæ£ç¢ºã«ã¯ãåŒã³åºãnew ã§äœæããStringTokenizer(command)StringTokenizerã䜿ã£ãŠcommandæååãããŒã¯ã³ã«åå²ãããŸããããã®éãæåã«ããŽãªã®ãããªã倿Žã¯è¡ãããŸããã ããŒã¯ãã€ã¶ã§çæãããããŒã¯ã³ã¯ãåãé åºã§æ°èŠæååé
åã®cmdarrayã«é
眮ãããŸãã
command - æå®ãããã·ã¹ãã ã»ã³ãã³ããenvp - æååã®é
åãé
åã®åèŠçŽ ã¯ãname=valueãšãã圢åŒã§ç°å¢å€æ°èšå®ãä¿æããããŸãã¯ããµãããã»ã¹ãçŸåšã®ããã»ã¹ã®ç°å¢ãç¶æ¿ããå Žåã¯nullãdir - ãµãããã»ã¹ã®äœæ¥ãã£ã¬ã¯ããªããµãããã»ã¹ãçŸåšã®ããã»ã¹ã®äœæ¥ãã£ã¬ã¯ããªãç¶æ¿ããå Žåã¯nullãProcessãªããžã§ã¯ãSecurityException - ã»ãã¥ãªãã£ã»ãããŒãžã£ãååšãããã®checkExecã¡ãœããããµãããã»ã¹ã®äœæãèš±å¯ããªãå ŽåIOException - å
¥åºåãšã©ãŒãçºçããå ŽåNullPointerException - commandãnullã®å ŽåããŸãã¯envpã®ããããã®èŠçŽ ãnullã®å ŽåIllegalArgumentException - commandã空ã®å ŽåProcessBuilderpublic Process exec(String[] cmdarray) throws IOException
ããã¯ãç°¡æã¡ãœããã§ãã exec(cmdarray)圢åŒã®åŒåºãã®åäœã¯ãåŒã³åºãexec(cmdarray, null, null)ãšãŸã£ããåãã«ãªããŸãã
cmdarray - å®è¡ããã³ãã³ããšåŒæ°ãå«ãé
åãProcessãªããžã§ã¯ãSecurityException - ã»ãã¥ãªãã£ã»ãããŒãžã£ãååšãããã®checkExecã¡ãœããããµãããã»ã¹ã®äœæãèš±å¯ããªãå ŽåIOException - å
¥åºåãšã©ãŒãçºçããå ŽåNullPointerException - cmdarrayãnullã®å ŽåããŸãã¯cmdarrayã®ããããã®èŠçŽ ãnullã®å ŽåIndexOutOfBoundsException - cmdarrayãé·ã0ã®ç©ºã®é
åã®å ŽåProcessBuilderpublic Process exec(String[] cmdarray, String[] envp) throws IOException
ããã¯ãç°¡æã¡ãœããã§ãã exec(cmdarray, envp)圢åŒã®åŒåºãã®åäœã¯ãåŒã³åºãexec(cmdarray, envp, null)ãšãŸã£ããåãã«ãªããŸãã
cmdarray - å®è¡ããã³ãã³ããšåŒæ°ãå«ãé
åãenvp - æååã®é
åãé
åã®åèŠçŽ ã¯ãname=valueãšãã圢åŒã§ç°å¢å€æ°èšå®ãä¿æããããŸãã¯ããµãããã»ã¹ãçŸåšã®ããã»ã¹ã®ç°å¢ãç¶æ¿ããå Žåã¯nullãProcessãªããžã§ã¯ãSecurityException - ã»ãã¥ãªãã£ã»ãããŒãžã£ãååšãããã®checkExecã¡ãœããããµãããã»ã¹ã®äœæãèš±å¯ããªãå ŽåIOException - å
¥åºåãšã©ãŒãçºçããå ŽåNullPointerException - cmdarrayãnullã®å Žåãcmdarrayã®ããããã®èŠçŽ ãnullã®å ŽåããŸãã¯envpã®ããããã®èŠçŽ ãnullã®å ŽåIndexOutOfBoundsException - cmdarrayãé·ã0ã®ç©ºã®é
åã®å ŽåProcessBuilderpublic Process exec(String[] cmdarray, String[] envp, File dir) throws IOException
ã³ãã³ãè¡ã®ããŒã¯ã³ã衚ãæååã®é
åcmdarrayãããã³ç°å¢å€æ°ã®èšå®ã衚ãæååã®é
åenvpãæå®ãããšããã®ã¡ãœããã¯æå®ãããã³ãã³ããå®è¡ããããã®æ°ããããã»ã¹ãäœæããŸãã
ãã®ã¡ãœããã¯ãcmdarrayãæå¹ãªãªãã¬ãŒãã£ã³ã°ã»ã·ã¹ãã ã»ã³ãã³ãã§ããããšã確èªããŸãã ã©ã®ã³ãã³ããæå¹ãã¯ã·ã¹ãã äŸåã§ãããã³ãã³ãã¯å°ãªããšãnull以å€ã®æååã®ç©ºã§ãªããªã¹ãã§ããå¿
èŠããããŸãã
envpãnullã®å Žåããµãããã»ã¹ã¯çŸåšã®ããã»ã¹ã®ç°å¢èšå®ãç¶æ¿ããŸãã
äžéšã®ãªãã¬ãŒãã£ã³ã°ã»ã·ã¹ãã ã§ã¯ãããã»ã¹ãèµ·åããããã«æå°éã®ã·ã¹ãã äŸåç°å¢å€æ°ã®ã»ãããå¿ èŠãšãªãå¯èœæ§ããããŸãã ãã®ãããæå®ãããç°å¢ã«å«ãŸããŠããªã远å ã®ç°å¢å€æ°èšå®ããµãããã»ã¹ãç¶æ¿ããå¯èœæ§ããããŸãã
çŸåšãProcessBuilder.start()ã¯ã倿Žãããç°å¢ãæã€ããã»ã¹ãèµ·åããæ¹æ³ãšããŠæšå¥šãããŠããŸãã
æ°ãããµãããã»ã¹ã®äœæ¥ãã£ã¬ã¯ããªã¯dirã§æå®ããŸãã dirãnullã®å Žåããµãããã»ã¹ã¯çŸåšã®ããã»ã¹ã®çŸåšã®äœæ¥ãã£ã¬ã¯ããªãç¶æ¿ããŸãã
ã»ãã¥ãªãã£ã»ãããŒãžã£ãååšããå Žåããã®checkExecã¡ãœããããé
åcmdarrayã®æåã®ã³ã³ããŒãã³ããåŒæ°ã«æå®ããŠåŒã³åºãããŸãã ããã«ãããSecurityExceptionãã¹ããŒãããå¯èœæ§ããããŸãã
ãªãã¬ãŒãã£ã³ã°ã»ã·ã¹ãã ã»ããã»ã¹ã®èµ·åã¯ããããŠã·ã¹ãã ã«äŸåããŸãã çºçããå¯èœæ§ãããäžå ·åã¯æ¬¡ã®ãšããã§ãã
以äžã®ã±ãŒã¹ã§ã¯ãäŸå€ãã¹ããŒãããŸãã äŸå€ã®æ£ç¢ºãªç¹æ§ã¯ã·ã¹ãã ã«äŸåããŸãããããã¯åžžã«IOExceptionã®ãµãã¯ã©ã¹ã«ãªããŸãã
cmdarray - å®è¡ããã³ãã³ããšåŒæ°ãå«ãé
åãenvp - æååã®é
åãé
åã®åèŠçŽ ã¯ãname=valueãšãã圢åŒã§ç°å¢å€æ°èšå®ãä¿æããããŸãã¯ããµãããã»ã¹ãçŸåšã®ããã»ã¹ã®ç°å¢ãç¶æ¿ããå Žåã¯nullãdir - ãµãããã»ã¹ã®äœæ¥ãã£ã¬ã¯ããªããµãããã»ã¹ãçŸåšã®ããã»ã¹ã®äœæ¥ãã£ã¬ã¯ããªãç¶æ¿ããå Žåã¯nullãProcessãªããžã§ã¯ãSecurityException - ã»ãã¥ãªãã£ã»ãããŒãžã£ãååšãããã®checkExecã¡ãœããããµãããã»ã¹ã®äœæãèš±å¯ããªãå ŽåIOException - å
¥åºåãšã©ãŒãçºçããå ŽåNullPointerException - cmdarrayãnullã®å Žåãcmdarrayã®ããããã®èŠçŽ ãnullã®å ŽåããŸãã¯envpã®ããããã®èŠçŽ ãnullã®å ŽåIndexOutOfBoundsException - cmdarrayãé·ã0ã®ç©ºã®é
åã®å ŽåProcessBuilderpublic int availableProcessors()
ãã®å€ã¯ãä»®æ³ãã·ã³ã®åŒåºãäžã«å€æŽãããå¯èœæ§ããããŸãã ãã®ãããå©çšå¯èœãªããã»ããµæ°ã«åœ±é¿ãåããã¢ããªã±ãŒã·ã§ã³ã¯ããã®ããããã£ããšãã©ãããŒãªã³ã°ããŠããªãœãŒã¹äœ¿çšæ³ã調æŽããå¿ èŠããããŸãã
public long freeMemory()
gcã¡ãœãããåŒã³åºããšãfreeMemoryããè¿ãããå€ãå¢ããå¯èœæ§ããããŸã public long totalMemory()
ä»»æã®æå®ãããåã®ãªããžã§ã¯ããæ ŒçŽããã®ã«å¿ èŠãªã¡ã¢ãªãŒå®¹éã¯ãå®è£ ã«ãã£ãŠç°ãªããŸãã
public long maxMemory()
Long.MAX_VALUEãè¿ãããŸãã public void gc()
gcãšããã¡ãœããåã¯ãgarbage collectorãã®é åããšã£ããã®ã§ãã gcãæç€ºçã«ã¯åŒã³åºãããªãã£ãå Žåã§ããä»®æ³ãã·ã³ã¯ãã®åå©çšããã»ã¹ãå¿
èŠã«å¿ããŠèªåçã«ãå¥ã®ã¹ã¬ããã§å®è¡ããŸãã
ãã®ã¡ãœãããåŒã³åºãã«ã¯ãSystem.gc()ã¡ãœãããäžè¬çã§äŸ¿å©ã§ãã
public void runFinalization()
finalizeã¡ãœãããå®è¡ãããŠããªããªããžã§ã¯ãã®finalizeã¡ãœãããå®è¡ããããšããŸãã ã¡ãœããåŒã³åºãããå¶åŸ¡ãæ»ãããæç¹ã§ãä»®æ³ãã·ã³ã¯ãã¹ãŠã®ãã¡ã€ãã©ã€ãºãå®äºããããæåãå°œãããããšã«ãªããŸãã
runFinalizationã¡ãœãããæç€ºçã«ã¯åŒã³åºãããªãã£ãå Žåã§ããä»®æ³ãã·ã³ã¯ãã®ãã¡ã€ãã©ã€ãºã»ããã»ã¹ãå¿
èŠã«å¿ããŠèªåçã«ãå¥ã®ã¹ã¬ããã§å®è¡ããŸãã
ãã®ã¡ãœãããåŒã³åºãã«ã¯ãSystem.runFinalization()ã¡ãœãããäžè¬çã§äŸ¿å©ã§ãã
Object.finalize()public void traceInstructions(boolean on)
booleanåŒæ°ãtrueã§ããå Žåããã®ã¡ãœãããåŒã³åºããšãJavaä»®æ³ãã·ã³ã¯ãä»®æ³ãã·ã³å
ã®ååœä»€ã®ãããã°æ
å ±ãå®è¡æã«åºåããŸãã ãã®æ
å ±ã®æžåŒããåºåå
ãšãªããã¡ã€ã«ãªã©ã®åºåã¹ããªãŒã ã¯ããã¹ãç°å¢ã«ãã£ãŠç°ãªããŸãã ãã®æ©èœããµããŒãããªãå Žåãä»®æ³ãã·ã³ã¯èŠæ±ãç¡èŠããå ŽåããããŸãã ãã¬ãŒã¹ã®åºåå
ã¯ã·ã¹ãã ã«ãã£ãŠç°ãªããŸãã
booleanåŒæ°ã«falseãæå®ãããšãä»®æ³ãã·ã³ã¯åœä»€ã®è©³çްãã¬ãŒã¹ã®åºåã忢ããŸãã
on - åœä»€ã®ãã¬ãŒã¹ãæå¹ã«ããå Žåã¯trueããã®æ©èœãç¡å¹ã«ããå Žåã¯falseãpublic void traceMethodCalls(boolean on)
booleanåŒæ°ãtrueã§ããå Žåããã®ã¡ãœãããåŒã³åºããšãJavaä»®æ³ãã·ã³ã¯ãä»®æ³ãã·ã³å
ã®åã¡ãœããã®ãããã°æ
å ±ãåŒåºãæã«åºåããŸãã ãã®æ
å ±ã®æžåŒããåºåå
ãšãªããã¡ã€ã«ãªã©ã®åºåã¹ããªãŒã ã¯ããã¹ãç°å¢ã«ãã£ãŠç°ãªããŸãã ãã®æ©èœããµããŒãããªãå Žåãä»®æ³ãã·ã³ã¯èŠæ±ãç¡èŠããå ŽåããããŸãã
åŒæ°ãfalseã«ããŠãã®ã¡ãœãããåŒã³åºããšãä»®æ³ãã·ã³ã¯ãåŒã³åºãããšã®ãããã°æ å ±ã®åºåã忢ããŸãã
on - åœä»€ã®ãã¬ãŒã¹ãæå¹ã«ããå Žåã¯trueããã®æ©èœãç¡å¹ã«ããå Žåã¯falseãpublic void load(String filename)
Runtime.getRuntime().load("/home/avh/lib/libX11.so");)ã filenameåŒæ°(ãã©ãããã©ãŒã åºæã®ã©ã€ãã©ãªæ¥é èŸããã¹ãããã³ãã¡ã€ã«æ¡åŒµåããã¹ãŠåãé€ãããŠããå Žå)ããããšãã°Lãšããååã®ã©ã€ãã©ãªã瀺ããLãšãããã€ãã£ãã»ã©ã€ãã©ãªãVMãšéçã«ãªã³ã¯ãããŠããå Žåã¯ããã€ãããã¯ã»ã©ã€ãã©ãªã®ããŒãã詊ã¿ãã®ã§ã¯ãªãããã®ã©ã€ãã©ãªã«ãã£ãŠãšã¯ã¹ããŒããããJNI_OnLoad_L颿°ãåŒã³åºãããŸãã ãã®åŒæ°ãšäžèŽãããã¡ã€ã«åããã¡ã€ã«ã»ã·ã¹ãã å
ã«ååšããå¿
èŠã¯ãããŸããã 詳现ã¯ããJNI仿§ããåç
§ããŠãã ããã ãã以å€ã®å ŽåãfilenameåŒæ°ã¯å®è£
ã«äŸåããæ¹æ³ã§ãã€ãã£ãã»ã©ã€ãã©ãªã»ã€ã¡ãŒãžã«ããããããŸãã
ãŸããã»ãã¥ãªãã£ã»ãããŒãžã£ãååšããå Žåã¯ãcheckLinkã¡ãœãããfilenameããã®åŒæ°ã«æå®ããŠåŒã³åºãããŸãã ããã¯ã»ãã¥ãªãã£äŸå€ãšãªãå ŽåããããŸãã
ããã¯loadLibrary(String)ã¡ãœãããšäŒŒãŠããŸãããã©ã€ãã©ãªåã§ã¯ãªãäžè¬çãªãã¡ã€ã«åãåŒæ°ãšããŠæå®ã§ããããããã€ãã£ãã»ã³ãŒãã§æžãããä»»æã®ãã¡ã€ã«ãããŒãå¯èœã«ãªããŸãã
ãã®ã¡ãœãããåŒã³åºãã«ã¯ãSystem.load(String)ã¡ãœãããäžè¬çã§äŸ¿å©ã§ãã
filename - ããŒããããã¡ã€ã«ãSecurityException - ã»ãã¥ãªãã£ã»ãããŒãžã£ãååšãããã®checkLinkã¡ãœããããæå®ããããã€ãããã¯ã»ã©ã€ãã©ãªã®ããŒããèš±å¯ããªãå ŽåUnsatisfiedLinkError - filenameã絶察ãã¹åã§ãªãå Žåããã€ãã£ãã»ã©ã€ãã©ãªãVMãšéçã«ãªã³ã¯ãããŠããªãå ŽåããŸãã¯ãã¹ãã»ã·ã¹ãã ããã®ã©ã€ãã©ãªããã€ãã£ãã»ã©ã€ãã©ãªã»ã€ã¡ãŒãžã«ãããã§ããªãå ŽåãNullPointerException - filenameãnullã§ããå ŽågetRuntime()ãSecurityException, SecurityManager.checkLink(java.lang.String)public void loadLibrary(String libname)
libnameã«ãã£ãŠæå®ããããã€ãã£ãã»ã©ã€ãã©ãªãããŒãããŸãã libnameåŒæ°ã«ã¯ããã©ãããã©ãŒã åºæã®æ¥é èŸããã¡ã€ã«æ¡åŒµåããŸãã¯ãã¹ãå«ããªãã§ãã ããã libnameãšãããã€ãã£ãã»ã©ã€ãã©ãªãVMãšéçã«ãªã³ã¯ãããŠããå Žåã¯ããã®ã©ã€ãã©ãªã«ãã£ãŠãšã¯ã¹ããŒããããJNI_OnLoad_libname颿°ãåŒã³åºãããŸãã 詳现ã¯ããJNI仿§ããåç
§ããŠãã ããã ãã以å€ã®å ŽåãlibnameåŒæ°ã¯ã·ã¹ãã ã»ã©ã€ãã©ãªã®å ŽæããããŒããããå®è£
ã«äŸåããæ¹æ³ã§ãã€ãã£ãã»ã©ã€ãã©ãªã»ã€ã¡ãŒãžã«ããããããŸãã
ãŸããã»ãã¥ãªãã£ã»ãããŒãžã£ãååšããå Žåã¯ãcheckLinkã¡ãœãããlibnameããã®åŒæ°ã«æå®ããŠåŒã³åºãããŸãã ããã¯ã»ãã¥ãªãã£äŸå€ãšãªãå ŽåããããŸãã
ãã®ã¡ãœãããåŒã³åºãã«ã¯ãSystem.loadLibrary(String)ã¡ãœãããäžè¬çã§äŸ¿å©ã§ãã ãã€ãã£ãã»ã¡ãœãããã¯ã©ã¹ã®å®è£
ã§äœ¿çšããå Žåãæšæºçã«ã¯ããã€ãã£ãã»ã³ãŒããã©ã€ãã©ãªã»ãã¡ã€ã«(ããã§ã¯ã説æäžLibFileãšãã)ã«å
¥ããŠãããæ¬¡ã®staticåæååãã
static { System.loadLibrary("LibFile"); }
ã¯ã©ã¹å®£èšã«å
¥ããŸãã ããããã°ãã¯ã©ã¹ãããŒãããã³åæåããããšãããã€ãã£ãã»ã¡ãœããã«å¿
èŠãªãã€ãã£ãã»ã³ãŒãã®å®è£
ãåãããã«ããŒããããŸãã
åãã©ã€ãã©ãªåãæå®ããŠãã®ã¡ãœãããè€æ°ååŒã³åºããŠãã2åç®ä»¥éã®åŒåºãã¯ç¡èŠãããŸãã
libname - ã©ã€ãã©ãªã®ååãSecurityException - ã»ãã¥ãªãã£ã»ãããŒãžã£ãååšãããã®checkLinkã¡ãœããããæå®ããããã€ãããã¯ã»ã©ã€ãã©ãªã®ããŒããèš±å¯ããªãå ŽåUnsatisfiedLinkError - libnameåŒæ°ã«ãã¡ã€ã«ã»ãã¹ãå«ãŸããŠããå Žåããã€ãã£ãã»ã©ã€ãã©ãªãVMãšéçã«ãªã³ã¯ãããŠããªãå ŽåããŸãã¯ãã¹ãã»ã·ã¹ãã ããã®ã©ã€ãã©ãªããã€ãã£ãã»ã©ã€ãã©ãªã»ã€ã¡ãŒãžã«ãããã§ããªãå ŽåãNullPointerException - libnameãnullã§ããå ŽåSecurityException, SecurityManager.checkLink(java.lang.String)@Deprecated public InputStream getLocalizedInputStream(InputStream in)
InputStreamReaderããã³BufferedReaderã¯ã©ã¹ã䜿ãããšãæšå¥šãããŠããŸãã InputStreamãåãåããããŒã«ã©ã€ãºãããŠãã以å€ã¯åŒæ°ã®ã¹ããªãŒã ãšãŸã£ããåãã§ããInputStreamãè¿ããŸããããŒã«ã«æåã»ããã®æåãã¹ããªãŒã ããèªã¿èŸŒãéã«ã¯ãããŒã«ã«æåã»ããããUnicodeã«èªåçã«å€æããŸãã
åŒæ°ã«æå®ããã¹ããªãŒã ãå°åå¯Ÿå¿æžã¿ã§ããå Žåã¯ããã®ãŸãŸçµæãšããŠè¿ãããŸãã
in - å°å察å¿ããInputStreamInputStream, BufferedReader.BufferedReader(java.io.Reader), InputStreamReader.InputStreamReader(java.io.InputStream)@Deprecated public OutputStream getLocalizedOutputStream(OutputStream out)
OutputStreamWriterãBufferedWriterãããã³PrintWriterã¯ã©ã¹ã䜿ãããšãæšå¥šãããŠããŸãã OutputStreamãåãåããããŒã«ã©ã€ãºãããŠãã以å€ã¯åŒæ°ã®ã¹ããªãŒã ãšãŸã£ããåãã§ããOutputStreamãè¿ããŸããUnicodeãã¹ããªãŒã ã«æžã蟌ãéã«ã¯ãUnicodeããããŒã«ã«æåã»ããã«èªåçã«å€æããŸãã
åŒæ°ã«æå®ããã¹ããªãŒã ãå°åå¯Ÿå¿æžã¿ã§ããå Žåã¯ããã®ãŸãŸçµæãšããŠè¿ãããŸãã
out - å°å察å¿ããOutputStreamOutputStream, BufferedWriter.BufferedWriter(java.io.Writer), OutputStreamWriter.OutputStreamWriter(java.io.OutputStream), PrintWriter.PrintWriter(java.io.OutputStream) ãã°ãŸãã¯æ©èœãéä¿¡
詳现ãªAPIãªãã¡ã¬ã³ã¹ããã³éçºè
ããã¥ã¡ã³ãã«ã€ããŠã¯ãJava SEã®ããã¥ã¡ã³ããåç
§ããŠãã ããã ãã®ããã¥ã¡ã³ãã«ã¯ãæŠå¿µçãªæŠèŠãçšèªã®å®çŸ©ãåé¿æ¹æ³ãæå¹ãªã³ãŒãäŸãªã©ã®ãéçºè
ã察象ã«ãããã詳现ãªèª¬æãå«ãŸããŠããŸãã
Copyright © 1993, 2025, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Documentation Redistribution Policyãåç
§ããŠãã ããã