问题背景:
java从olap中取大量数据时候要花费很长时间.我如何能利用程序在取数据的时候做别的事情?事情做完后又再去取数据?
各位大虾给点意见啊~~,最好有demo!!

解决方案 »

  1.   

    把读取数据操作放到一个thread
      

  2.   

    有源代码才快啊.不懂再看看api就ok啊.
      

  3.   

    java从olap中取大量数据时候要花费很长时间
    这个说法本身就是错的。。如果真的要把CPU占用到100并花很多时间,那多线程也无法让你做更多的事情。
    实际上,不论是硬盘操作,还是网络通讯,都会造成当前线程阻塞的,此时多线程才有优势,明白了?
      

  4.   

    取数据的时候cup几乎不使用啊.我就想利用这个空隙.
    多线程?? 大哥能不能说的再详细点.或者推荐个网址给我参考一下.谢谢~~~
      

  5.   

    启动线程   
    //创建并启动本地数据库处理线程(三个队列作为参数)
        ldbProc = new LocalDBThread(prop,sendQueue,recvQueue,errQueue);
        ldbProc.start();
        
        //创建并启动远程数据库处理线程(三个队列作为参数)
        rdbProc = new RemoteDBThread(prop,sendQueue,recvQueue,errQueue);
        rdbProc.start();
    public LocalDBThread(Properties props,MyQueue sendQueue,MyQueue recvQueue,MyQueue errQueue)
    {

             }