我认为那有可能是DELPHI的BUG。

解决方案 »

  1.   

    可以用timer设置获取时间,但是这样会把网速慢情况误认为网络阻塞
      

  2.   

    感谢taogou!!!
    可是即使设置了TIMER,当TIMER事件触发时,由于不能通过MIDAS取消掉数据库的访问(例如,最简单的查询操作),因此,程序还是会阻塞,看起来象‘死’了一样。还请高手指点。
      

  3.   

    感谢小天。
    但是由于DELPHI本身的原因,用于多线程访问VCL控件效率较低,即使使用同步,也会造成程序界面反应较慢。而MIDAS恰恰是用控件来访问数据库的,因此,使用线程也不能从根本上提高效率。最重要的是,如何能取消对数据库的操作。
      

  4.   

    从《Delphi 4编程技术内幕》看到的,TTable, TQuery对象是线程安全的,可以不用同步。前提是它们不要挂到TDataSource及任何可视控件上。
      

  5.   

    如果使用ADO连接的话,有时间设置.