是wcf rest weboperationcontext.current线程安全吗?

时间:2009-11-09 07:23:05

标签: wcf rest multithreading

我目前正在从WCF的所有WebGet / WebInvoke修饰方法中返回一个流。我也得到一个流作为输入。我之所以这样做是因为我希望灵活应对&输入内容类型。这主要是因为我在解析输入时需要灵活性 - 它不能轻易地序列化/反序列化。

然而,我然后使用WebOperationContext.Current来设置httpstatuscodes。我担心这不会是线程安全的(线程如何知道它正在处理哪个上下文?)

所以我的问题是 - 在高负载条件下使用WebOperationContext.Current线程安全吗?

有谁知道线程和WebOperationContext.Current是如何链接的?它是否使用TLS(线程本地存储)?

1 个答案:

答案 0 :(得分:0)

WebOperationContext州的文件:

  

任何公共静态(在Visual中共享)   基本)这种类型的成员是线程   安全。任何实例成员都不是   保证是线程安全的。

这意味着调用Current是线程安全的,因为它是静态的,但是在返回的实例上调用任何方法都不能保证是线程安全的。