你只要只用BDE,不论你愿不愿意,你都在使用TSession。
只要你uses DBTables,那么就会建立一个default的Session,不论你愿不愿意,这个Session都在起效应。另外,在线程中,可以有两种选择:
1、TDatabase的HandleShared属性设为True。
2、加入TSession控件在线程中,同时将AutoSessionName设为True。相应的TDatabase、TTable等控件的Session也要连接到对于地TSession上。

解决方案 »

  1.   

    to chechy
      谢谢你的回答.
      我也知道应使用TSession,但我无法改变原来的类,只能使用它.而我又想在一个线程中使用它.虽然现在还看不出有什么问题,但总感觉程序有隐患,所以请教大家如不使用TSession会有什么问题
      

  2.   

    那就是按照我的一种方法,如果将TDatabase的HandleShared设为True。这样在提交数据时可能会造成瓶颈。当然对资源是非常节省的。TSession的缺点在于消耗资源。
      

  3.   

    你只要只用BDE,不论你愿不愿意,你都在使用TSession。
    大哥说的对,不过你最后的提法还是有点不怎么明白。
    我觉得这种“隐患”还是可能要到真正发生的时候才能找对策,因为现在还不知道它有什么危害
      

  4.   

    to cobi
        我说不使用TSession意思是不显式地建立一个TSession实例,也不使用TDatabase.SessionName := TSession.SessionName,TQuery.SessionName := TSession.SessionName......