比较急。
程序描述:各线程对文件进行处理[解析提取等]
          把处理后的结果(解析出来的很多记录)保存到ACCESS数据库中。要求速度快:多线程应该可以提高速度,问题:怎么把提取出来的多条记录存进同一个数据库??
我的思路:分线程处理完之后,把多条数据交给主线程由主线程负责数据库的存储
线程之间的配合和阻塞问题。??有做过这方面的 说一下,今晚急用。路过的朋友帮忙顶一下,谢了都有分。
提供代码和完整思路的送分至少200!(另开贴)

解决方案 »

  1.   

    楼主这个程序多线程管用吗? 
     多线程是相对的(除非是多CPU系统),对那些“间隔”(如:需输数据)的程序比较管用,CPU在等待输入程序的时候可以处理别的线程;楼主的程序是CPU密集,个个线程之间要相互转换,是不是得不偿失呢?对多线程的一点了解,希望各位高人指正!
      

  2.   

    楼主这个程序多线程管用吗? 
     多线程是相对的(除非是多CPU系统),对那些“间隔”(如:需输数据)的程序比较管用,CPU在等待输入程序的时候可以处理别的线程;楼主的程序是CPU密集,个个线程之间要相互转换,是不是得不偿失呢?对多线程的一点了解,希望各位高人指正!有道理,如果按楼主的意思做成之后,看一下会出现什么结果:
    如:在一个名为aaa.txt的文本中查找字符串“BBB”,如果这个文件中有十个“BBB”,你创建三个线程进行查找,结果会怎样?找到三十条记录
    因为你没有办法控制它,做不成Mark,所花的时间还是不会少
    还是用老办法吧 ,找到一个存一个
      

  3.   

    楼主这个程序多线程管用吗? 
     多线程是相对的(除非是多CPU系统),对那些“间隔”(如:需输数据)的程序比较管用,CPU在等待输入程序的时候可以处理别的线程;楼主的程序是CPU密集,个个线程之间要相互转换,是不是得不偿失呢?对多线程的一点了解,希望各位高人指正!
    ------------------
    用多线程对多个文件进行处理,肯定会明显加快速度的,CPU总是比硬盘要快很多倍。但多线程对一个文件的数据处理就不现实。
    基于前者,楼主最好用sql server等关系数据库才能明显提高数据存入数据库的速度,用ACCESS这种文件型作数据库,它在写数据时不支持并法控制。只能是独享的。则程序要作存库的串行化控制。
      

  4.   

    insert into biao1(bid,bname,bage) select cid,cname,cage from biao2 where cid > 20