仍然试图让这个线程/货币的东西失望。谢谢您的帮助。 该程序分为三个类,Analysis打开一个文件,从文件中取一行并使用ForkJoinPool将其传递给runnable类,然后等待池完成然后将数据输出到另一个文件,RowCheck是runnable对数据进行排序然后将其传递给Data,即最终类,其具有AtomicReference>>在输出之前组织数据。 分析:
threadmgmt.execute(thread);
...close loop...close try block...exception handling...
while(threadmgmt.hasQueuedSubmissions()){ }
while(Data.isBusy()){
if(threadmgmt.isQuiescent()){
Data.setBusy(false); } }
...try block for output...
output = Data.getArray(); // This is where the error is called from
Exception in thread "main" java.lang.NullPointerException
at com.hcue.csvanalysis.Data.getArray(Data.java:56)
at com.hcue.csvanalysis.Analysis.main(Analysis.java:55)
毫不奇怪,它是一个NullPointerException,因为AtomicReference没有被触及,尽管RowCheck在之前的六十多个线程中调用了这个方法。你有什么建议吗?