任何帮助将不胜感激。线程在WCF和依赖属性(调用线程不能访问此对象,因为不同的线程拥有它的例外)
我们有一个调用方法的WCF服务(在IIS中托管),并且在此方法内部调用了一个依赖属性的getter(这个getter是在单个对象中收集的几个依赖属性的一部分并用于所有类型的转换)。
我们有时会看到,而不是一致的,在WCF服务端崩溃,与下面的异常消息:
“调用线程不能因为不同的线程拥有它访问该对象”。
我做了一些搜索,发现了一个similar problem。
从阅读中我明白,有一种情况是在不同的线程上调用getter,这就是为什么我们没有看到这个例外的原因。
但是,我仍然对解决方案感到困惑。 WCF服务是否有一个可以激活CheckAccess()然后调用Dispatcher.Invoke()方法的调度程序(就像在WPF应用程序中一样)?
有人能请指教吗?
感谢,
埃拉德
为什么在IIS中使用'DependencyObject'?这就是根本问题 - 一般来说,'DependencyObject'类绝不会被用在具有合适的'Dispatcher'的系统之外。 – 2013-02-28 01:54:30
我认为依赖属性是WPF特有的?这也是一个WPF应用程序? – 2013-02-28 01:54:43
这不是一个WPF应用程序。这是一个使用某种基础结构包含一组对象的WCF服务,其中有几个公开依赖项属性。我们继承了这个基础设施,需要使用它。 – 2013-02-28 02:01:24