
正文
VB.net异步长连接 vbnet多线程同步异步
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
关于VB.NET连接字符串
Dim da As String = "SELECT Count(检测项目) FROM b where 检测项目='cc'"
这句写错啦,VB.net异步长连接你直接传送VB.net异步长连接的是检测项目为字符串"cc"VB.net异步长连接的参数,并不是VB.net异步长连接你程序写的CC参数
改为:
Dim da As String = "SELECT Count(检测项目) FROM b where 检测项目='" cc "'"
建议通过程序组织的sql语句可以通过msgbox da 弹出来看看,这样你较容易查出是什么错误,较长的就用textbox1.text=da来看VB.net异步长连接了,不过记得设置断点"exit sub"
使用ACCESS数据库的日期列比较,应为:
"select * from 表 where 日期列=" "#" cdate(textbox1.text) "#"
注意前后两个“#”号
使用sqlserver
"select * from 表 where 日期列=" "'" cdate(textbox1.text) "'"
当然日期格式要注意,如长短日期等。
日期期间:between 小日期 and 大日期(记得加#号)
相关问答
Q1: vb.net socket如何保持连接
Dim s As Socket
Private Shared Function ConnectSocket(ByVal server As String, ByVal port As Integer) As Socket'创建连接
Dim s As Socket = Nothing
Dim hostEntry As IPHostEntry = Nothing
Dim address As IPAddress
address = System.Net.IPAddress.Parse(server)
Dim endPoint As New IPEndPoint(address, port)
Dim tempSocket As New Socket(endPoint.AddressFamily, SocketType.Stream, ProtocolType.Tcp)
tempSocket.Connect(endPoint)
If tempSocket.Connected Then
s = tempSocket
End If
Return s
End Function
调用VB.net异步长连接:s = ConnectSocket(IP地址, 端口)'端口号如8000,8080等
s.close'关闭连接
Q2: 求深入浅出讲解VB.NET下利用Async和Await实现异步的方法。
run需要一个action方法。
这个方法用于用后台进程执行占用大量CPU的工作,你的for代码段应该写在里面。
我没用过这个,粗略看了一下资料,实际情况与他的实例不太一样,Dim a As Task(of Boolean)=Await Doo(),直接提示错误,正确用法是去掉await。
解决以上两个问题,测试运行通过。(一个文本框滚数字,另一个打字无压力)
其实你的要求,不需要这么高级。多线程应该可以。
Q3: VB.NET 简单多线程
多线程一般是不推荐用的,因为线程之间如果有共享资源的话会引起竞争,需要加锁处理VB.net异步长连接;而且线程间没有时序关系,所以你在调试中可能会出现异步处理结束顺序与开始处理顺序不一致的情况(VB.net异步长连接我在调试中已经发现该问题)。
针对你提出的这个问题,采用了多线程处理,利用的是BackgroundWorker也就是异步处理控件进行了处理。
代码已经经过调试通过。欢迎交流,如有问题,留下QQ或其VB.net异步长连接他联系方式。
代码如下,并附程序截图。
‘---------------------------------------------------
Imports System.ComponentModel '导入异步控件命名空间
Public Class Form1
Private howmany As Integer = 10
Private AnalysisNumber(0 To howmany - 1) As BackgroundWorker
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
ListBox1.Items.Clear()
creatNewBackgroundWorker()
addHandle()
startWork()
End Sub
Private Sub creatNewBackgroundWorker()
For i As Integer = 0 To AnalysisNumber.Length - 1
AnalysisNumber(i) = New BackgroundWorker
Next
End Sub
Private Sub addHandle()
For i As Integer = 0 To AnalysisNumber.Length - 1
AddHandler AnalysisNumber(i).DoWork, AddressOf AnalysisNumber_DoWork
AddHandler AnalysisNumber(i).RunWorkerCompleted, AddressOf AnalysisNumber_RunWorkerCompleted
Next
End Sub
Private Sub startWork()
For i As Integer = 0 To 9
Dim temp(0 To 9) As Integer
For j As Integer = 1 To 10
temp(j - 1) = 10 * i + j
Next
AnalysisNumber(i).RunWorkerAsync(temp)
Next
End Sub
Private Sub AnalysisNumber_DoWork(ByVal sender As Object, ByVal e As System.ComponentModel.DoWorkEventArgs)
Dim data As Integer()
data = CType(e.Argument, Integer())
Dim temp As Integer
For i As Integer = 0 To data.Length - 1
temp = data(i)
data(i) = temp * temp
Next
e.Result = data
End Sub
Private Sub AnalysisNumber_RunWorkerCompleted(ByVal sender As Object, ByVal e As System.ComponentModel.RunWorkerCompletedEventArgs)
Dim data As Integer()
data = CType(e.Result, Integer())
For i As Integer = 0 To data.Length - 1
ListBox1.Items.Add(data(i))
Next
End Sub
End Class
Q4: vb.net如何与excel建立连接,并从里面查询并读取数据?
1.新建一张表格,在表格中导入学生的成绩表,如图所示,将建立一个按钮,通过它来实现查找。
2.单击菜单栏中的“开发工具”——插入——表单控件——按钮,在出现的十字箭头上拖住画出一个按钮,如图所示。
3.在弹出的查找红对话框中选择“录制”,在弹出的“录制新宏”对话框中,修改宏名称为“查找”,单击确定。
4. 单击“开发工具”——查看代码,打开VBA编辑器,如图所示。
5.现在输入代码:
Sub 查找()
Dim jieguo As String, p As String, q As String
Dim c As Range
jieguo = Application.InputBox(prompt:="请输入要查找的值:", Title:="查找", Type:=2)
If jieguo = "False" Or jieguo = "" Then Exit Sub
Application.ScreenUpdating = False
Application.DisplayAlerts = False
With ActiveSheet.Cells
Set c = .Find(jieguo, , , xlWhole, xlByColumns, xlNext, False)
If Not c Is Nothing Then
p = c.Address
Do
c.Interior.ColorIndex = 4
q = q c.Address vbCrLf
Set c = .FindNext(c)
Loop While Not c Is Nothing And c.Address p
End If
End With
MsgBox "查找数据在以下单元格中:" vbCrLf vbCrLf _
q, vbInformation + vbOKOnly, "查找结果"
Application.ScreenUpdating = True
Application.DisplayAlerts = True
End Sub
6.现在回到EXCEL表格,右击按钮,选择“编辑文字”,修改按钮名称为“查找按钮”。
7. 现在单击查找按钮,出现对话框“请输入要查找的值”,在方框中输入“男”,单击确定,出现对话框“查找数据在一下单元格中”,单击确定,对应单元格就变成了亮色。
VB.net异步长连接的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于vbnet多线程同步异步、VB.net异步长连接的信息别忘了在本站进行查找喔。







