【发布时间】:2008-10-20 23:35:11
【问题描述】:
与 DbProviderFactory 线程相关的 .net 类是否安全?
【问题讨论】:
标签: c# .net sql sql-server database
与 DbProviderFactory 线程相关的 .net 类是否安全?
【问题讨论】:
标签: c# .net sql sql-server database
来自 msdn: 线程安全
此类型的任何公共静态(在 Visual Basic 中为共享)成员都是线程安全的。不保证任何实例成员都是线程安全的。
【讨论】:
当您说“这些实例在运行时生成一次,并在服务的剩余生命周期中使用”时,您是指连接对象吗?另外,您的意思是您在服务的整个生命周期中保持连接对象处于打开状态?如果您的服务是多线程的,并且您只有一个连接实例(例如单例或静态类),则必须确保一次仅由一个线程使用该连接。
没有看到太多代码,这听起来像是你如何处理从工厂获得的 IDbConnection 而不是工厂本身的问题。
我们在多线程应用程序中大量使用 DbProviderFactory,这些应用程序连接到 Oracle、FoxPro 和 SqlServer,我还没有看到这个问题。
祝你好运!
里卡多。
【讨论】: