【发布时间】:2015-08-27 15:00:24
【问题描述】:
我正在处理一个 VB.Net 项目,我想要一种快速而肮脏的方式,让第二个线程执行某些功能,然后将一些可变结果存储到会话中。然后我想从第一个线程访问该变量(当然在同一个会话中)。
这是代码示例...
按钮#1
Sub button_Click1(byVal sender As Object, ByVal e As Event Args)
textfield1.Visible = False
lable2.Visible = True
textfield2.Visible = True
button_Click2.Visible = True
Dim thread2 As New System.Threading.Thread(AddressOf foothread)
thread2.Start(textfield1.Text.ToString)
End Sub
按钮#2
Sub button_Click2(byVal sender As Object, ByVal e As Event Args)
If(textfield2.Text = "is cool" And System.Web.HttpContext.Current.Session("myBool") = true) Then
lable2 = "You're right!"
else
lable2 = "???"
end If
线程#2
Public Sub thread2(ByVal str1 As String)
If(srt1 = "Stack/Flow") Then
System.Web.HttpContext.Current.Session("myBool") = true
Else
System.Web.HttpContext.Current.Session("myBool") = false
End If
End Sub
显然这不是一个真实的生产示例,我正在线程中运行一个冗长的查询,该查询将返回我的会话变量(由于该框的网络流量而冗长)
这可能吗?有没有更好的办法?这甚至会起作用吗? 多线程应用程序的新手。
谢谢!
【问题讨论】:
标签: asp.net vb.net multithreading session