Java SE7并发 - 数据未达到AtomicReference <map ...> </map ...>

时间:2012-08-19 01:05:03

标签: java concurrency

仍然试图让这个线程/货币的东西失望。谢谢您的帮助。 该程序分为三个类,Analysis打开一个文件,从文件中取一行并使用ForkJoinPool将其传递给runnable类,然后等待池完成然后将数据输出到另一个文件,RowCheck是runnable对数据进行排序然后将其传递给Data,即最终类,其具有AtomicReference&gt;&gt;在输出之前组织数据。 分析:

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在之前的六十多个线程中调用了这个方法。你有什么建议吗?

0 个答案:

没有答案