我们可以考虑同时访问同一Web服务方法的两个客户端是两个线程(涉及所有问题......) 对于asp.net Web应用程序中的方法,它是一样的吗?
答案 0 :(得分:2)
只要您不使用基于静态的static
或其他共享对象,代码中就不会出现多线程问题。但是,您需要考虑资源(即文件)。
每个请求都由一个专用线程处理,一旦完成为请求提供服务,它就会回到线程池中。
答案 1 :(得分:1)
这取决于。请参阅我对Why are these asynchronous RIA Service calls executed in serial on the web server?的回答。它由ServiceBehaviourAttribute
,InstanceContextMode
和ConcurrencyMode
的两个属性控制。
在asp.net Web应用程序中,来自多个客户端的请求将倾向于并行处理,除非(出于某些奇怪的原因)两个客户端共享同一会话,并且这两个请求都是针对标记为需要会话的页面(这是我相信默认情况下),在这种情况下,两个请求将被序列化。
答案 2 :(得分:0)
如果您正在讨论WCF服务,则行为取决于您配置服务的方式。有关详情,请参阅this article on MSDN和ServiceBehaviorAttribute.InstanceContextMode Property