ASP.NET-同一客户端的多个工作线程
我知道ASP.NET使用工作线程来服务请求。因此,客户机A和客户机B可以发出请求,并且这些请求被并发处理 客户端可以同时发出多个请求。请参阅下面的代码:ASP.NET-同一客户端的多个工作线程,asp.net,vb.net,Asp.net,Vb.net,我知道ASP.NET使用工作线程来服务请求。因此,客户机A和客户机B可以发出请求,并且这些请求被并发处理 客户端可以同时发出多个请求。请参阅下面的代码: Imports System.Threading Partial Class Default5 Inherits System.Web.UI.Page Dim intCount1 As Integer, intCount2 As Integer Protected Sub Page_Load(ByVal sender
Imports System.Threading
Partial Class Default5
Inherits System.Web.UI.Page
Dim intCount1 As Integer, intCount2 As Integer
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
'If Session("Test") = "" Then
Session("Test") = Request.QueryString("ID")
'End If
Response.Write(Session("Test"))
End Sub
End Class
Imports System.Threading
Partial Class Default4
Inherits System.Web.UI.Page
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
If Session("Test") <> "" Then
For intCount1 = 0 To 10
Response.Write(Session("Test") & "," & intCount1 & "<br>")
Thread.Sleep(1000)
Next
End If
End Sub
End Class
在这两种情况下,session变量都是2(我理解这是为什么)。请看我昨天问的一个问题:。在本例中,会话变量在两种情况下都不是2
我的问题是,;ASP.NET可以同时处理来自同一客户端的多个请求。Wins响应似乎表明一次处理一个请求
My question is; can ASP.NET process multiple requests
from the same client at the same time.
如果禁用会话,或使用不带会话的处理程序,或创建完全自定义的会话,则选择“是”
如果您对同一个web应用程序使用多个池来创建一个
您还可以阅读:对于找到此帖子的任何其他人,如果您不需要会话的写访问权限,则声明只读访问将允许ASP.NET并发运行请求,因为它不必获取会话锁: 第页:
EnableSessionState="ReadOnly"
或在通用处理程序中,通过实现:
IReadOnlySessionState
“如果禁用会话”是什么意思?我在问题中提供的示例代码使用会话变量。谢谢。@w0051977是的,我看到了使用会话变量作为测试的示例,如果您需要它们,并且无法避免它们,则无法使用asp.net中的现有会话代码-因此您需要自定义会话句柄代码(我为此制作了一个,这并不困难)@w0051977会话实际上是将用户的cookie与数据库上的一行连接起来,该行保存一些数据。如果您有web服务器a和web服务器B,会发生什么情况。用户可以选择在使用应用程序时转到哪个web服务器?@w0051977其全部内容是编程。如果您对它进行编程,用户就可以做到这一点。如果让现有的自动过程选择要使用的服务器或池,则不能这样做。
IReadOnlySessionState