多线程使用“Access数据库访问类”的问题
访问“Access”数据库,可以使用“Access数据库访问类”,它是一个“静态的方法类”。比如“public static void DataAccess.ExeSql(string sql)”。
问题:
“线程1”使用此方法,打开了“数据库连接”,数据还没有处理完,“连接”还没有关闭。“线程2”、“线程3”、“线程4”使用此方法又要打开“数据库连接”,这时就会出现问题,资源释放不了。
解决方法:
1、不使用静态方法,而是创建“数据库访问类对象”,这样是不是就不会出现“连接”资源竞争了???
2、为每一个线程创建一个连接,连接持续开放,不关闭。因为,线程要持续循环处理数据,这样是不是即可以提高数据处理效率,又可以给每个线程“专用的访问连接对象”,从而不会造成资源竞争。这样可以吗???
------解决方案--------------------access不支持并发查询,使用多线程不可能提高性能。