确保SqlDependency已停止

时间:2017-08-03 07:49:04

标签: sql-server sqldependency

SqlDependency在应用程序启动时启动,在应用程序停止时停止。可能存在SqlDependency.Stop()失败的情况(例如,连接到DB的问题)。据我了解,无论如何都会删除SqlDependency基础结构。

但是我不明白SqlDependency.Stop()还能做什么?

在SqlDependency.Start()之前调用SqlDependency.Stop()是否有意义?

1 个答案:

答案 0 :(得分:1)

  

在SqlDependency.Start()之前调用SqlDependency.Stop()是否有意义?

如果未调用Start(),则调用Stop()是无操作。我们可以查看SqlDependency.cs参考来源

   internal static bool Stop(string connectionString, string queue, bool useDefaults, bool startFailed) {
            ...
            bool result = false;

            lock (_startStopLock) {
                if (null != _processDispatcher) { // If _processDispatcher null, no Start has been called.
                    ....
                }
            }
            return result;

所以它不会受到伤害,但不应该需要它。