用delphi7开发的抄表程序,抄表时间是每隔两个小时整点抄读数据,如从12:50左右就开始抄读数据,大概也抄读20分钟左右,在13:10左右抄读完毕,数据的抄读技术是用IOCP技术,抄读的数据程序中调用数据库的存储过程来存入数据库;现在有个问题是,当抄读数据开始后,一小会儿时间后,程序的界面就出现“卡死”现象,反应不过来了,不知道为啥,希望高手们能给些建议???

解决方案 »

  1.   

    http://topic.csdn.net/u/20110217/11/56577c65-2e77-4f8f-b541-0be47cdb4d60.html
      

  2.   

    tcp接受数据,写入数据库?
    它们本身费时吗?如果是,想不卡,需要一个专门的线程来做
      

  3.   

    先把数据收下来保存在内存中 不写库。
    所有数据抄读结束了后 开始写库。
    看看 是什么地方造成的假死在大循环操作的时候 加上Application.ProcessMessages。
    如果是操作 数据库太慢 就先办法优化入库部分。实在不行 就按照上面说的 开线程来做