我有以下配置的服务属性WCF服务与ConcurrencyMode.Multiple和InstanceContextMode.Single行为和多线程安全
[ServiceBehavior(ConcurrencyMode = ConcurrencyMode.Multiple, InstanceContextMode = InstanceContextMode.Single)]
public class UserService : IUserServiceContract
{}
我应该在这种情况下锁定在服务中实现方法机制使用?
如果是,这是否正确实施?
[ServiceBehavior(ConcurrencyMode = ConcurrencyMode.Multiple, InstanceContextMode = InstanceContextMode.Single)]
public class UserService : IUserServiceContract
{
private readonly object LockObject = new object();
public Object1 GetObject1()
{
lock (LockObject)
{
using (var ob = new Object1)
{
return ob.Get();
}
}
}
public Object2 GetObject2()
{
lock (LockObject)
{
using (var ob = new Object2)
{
return ob.Get();
}
}
}
}
但在这种情况下,没有共享资源... –
是的我同意,我的假设是这是虚拟代码查看各种对象名称。 – Tanner