gpt4 book ai didi

wcf - 使用 ConcurrencyMode.Multiple 和 InstanceContextMode.PerCall 锁定

转载 作者:行者123 更新时间:2023-12-04 20:33:19 25 4
gpt4 key购买 nike

我是否需要在使用 ConcurrencyMode.Multiple 的 WCF 服务中实现自己的锁定?和 InstanceContextMode.PerCallInstanceContextMode.PerSession ?自新ServiceContext对象是在每次调用或新 session 时创建的,我认为我不会,但我不确定。

例子:

[ServiceBehavior(ConcurrencyMode = ConcurrencyMode.Multiple, InstanceContextMode = InstanceContextMode.PerSession,
IncludeExceptionDetailInFaults = false, MaxItemsInObjectGraph = Int32.MaxValue)]
public class ExampleService : IExample

最佳答案

如果使用 PerCall 实例化,则无需担心并发模式,因为只有一个请求可以使用该实例,因此不会出现锁定问题。

对于 PerCall,如果您的客户端使用 session 并且能够同时发送多个请求(例如,使用来自多个线程的相同代理),那么是的,您将需要锁定不是线程安全的对象。我猜您使用 PerSession 是因为您想保留状态,因此您需要锁定状态更改方法/代码。

关于wcf - 使用 ConcurrencyMode.Multiple 和 InstanceContextMode.PerCall 锁定,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7541748/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com