WCF ConcurrencyMode Single e InstanceContextMode PerCall
Tengo un problema con mi configuración de servicio wcf. Me gustaría que cada llamada a mi servicio creara una nueva instancia del servicio. Para la concurrencia, me gustaría que una llamada finalice antes de que comience otra.
Así si tengo un servicio como este:
[ServiceBehavior(ConcurrencyMode=ConcurrencyMode.Single,
InstanceContextMode=InstanceContextMode.PerCall)]
public class MyService: IMyService
{
public bool MyServiceOp()
{
Debug.WriteLine("thread "+
Thread.CurrentThread.ManagedThreadId.ToString());
Debug.WriteLine("start operation ");
Do_work()
Debug.WriteLine("end operation");
return true;
}
}
Cuando lo llamo con varias llamadas en un bucle, la traza da:
thread 1
thread 2
start operation
start operation
end operation
end operation
Mientras que me gustaría tener esto:
thread 1 start operation end operation
thread 2 start operation end operation
¿Es posible? Gracia