SQL 服务器 CE 数据库线程安全

SQL Server CE database thread safety

我正在创建一个 vb.net 智能设备应用程序,它利用 SQL Server CE 3.5 数据库和一个绑定到输入控件的内存数据集作为中介。

我想通过将数据库更新例程放在单独的线程上来最大限度地提高 UI 的性能,但我担心应用程序可能会在另一个应用程序完成之前尝试进行更新。这是真实的可能性还是 SQL Server CE 能够对更新进行排队?

Microsoft 在 SqlCeDataAdapter class 的文档中声明 "Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.",但我在多线程问题上没有足够的经验来正确解释它。

SQL 服务器 CE 对象的

None 是线程安全的,因此仅使用单线程进行后台更新。此外,考虑使用 TableDirect API 在受限设备上实现最佳插入和更新性能。