java.lang.InternalError:
at java.lang.Thread.nativeCreate (Native Method)
at java.lang.Thread.start (Thread.java:1063)
at java.util.concurrent.ThreadPoolExecutor.addWorker (ThreadPoolExecutor.java:920)
at java.util.concurrent.ThreadPoolExecutor.processWorkerExit (ThreadPoolExecutor.java:988)
at java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1130)
at java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java:587)
at java.lang.Thread.run (Thread.java:818)
用户正在向我发送一些与此有关的信息:
java.lang.Stringindexoutofboundsexception: length=0; regionStart=0; regionLength=1
at java.lang.String.startEndAndLength(String.java:298)
at java.lang.String.substring(String.java:1087)
解决方法:
Stringindexoutofboundsexception异常只是说有人试图在空字符串上调用substring(0,1).如果你进一步查看堆栈跟踪,这是来自你的代码吗?如果是这样,那么在调用子字符串之前,只需检查以确保该字符串不为空.
至于Thread.nativeCreate,你有一些迹象表明它与其他Stringindexoutofboundsexception异常有关吗?我不会假设,因为你没有提供任何有关他们关系的信息. ThreadPoolExecutor.addWorker失败的最可能原因是资源耗尽,要么耗尽内存,要么耗尽设备上允许的线程.检查您正在使用检查获取和配置ThreadPoolExecutor的方式,以查看是否可能超出其MaximumPoolSize或LargestPoolSize参数.