仍然试图让这个线程/货币事情下降。谢谢您的帮助。该程序分为三个类,Analysis 打开一个文件,从文件中取出一行并使用 ForkJoinPool 将其传递给可运行类,然后等待池完成,然后将数据输出到另一个文件,RowCheck 是可运行的它对数据进行排序,然后将其传递给最终类 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 已经到了调用该方法的地步,以便在 60 多岁的线程之前这样做。你有什么建议?