我刚开始学习ODBC,现在要实现多线程访问数据库,必然要涉及到ODBC支持多线程方面的知识。我只知道ODBC可以创建一个环境句柄,多个链接句柄,每个链接句柄下面又可以创建多个语句句柄,我的问题是:要想让ODBC支持多线程访问,需不需要为每一个线程创建多个链接句柄,还是多个线程只要共享一个链接句柄?最好能够附上实现的代码,参考文献或者实例。希望园内的大牛指点一二,不胜感激!
一般说来,一个连接句柄同时只允许一个读/写操作。
你这里要控制的不是线程,而是连接句柄,要建立连接池,而非线程池。
具体的实例可以参考ADO.NET的源代码。
谢谢你的回答,受教了!
可以是用线程池来做
我是采用了线程池,但是针对ODBC,我如何具体实现ODBC的线程安全,也就是多线程访问ODBC,不会出现读取数据错误的情况,或者说采用什么样的模式可以实现这个功能?