-1
我正在创建一个线程并读取数据集并将记录写入excel。 但是,读取25条记录后,线程并未读取完整记录并在中间断开。线程抛出HRESULT 800ac472错误
If dsCostUsage.Tables(0).Rows.Count > 150 Then
Dim t As New Thread(AddressOf FillDataRows1)
t.Start(worksheet)
End If
Private Sub FillDataRows1(ByVal ws As Worksheet)
Dim startuprow As Integer = 7
Dim colpointer As Integer = 0
Dim rowpointer As Integer = 0
Dim str As String
While rowpointer <= dsCostUsage.Tables(0).Rows.Count - 1
While colpointer <= dsCostUsage.Tables(0).Columns.Count - 1
str = dsCostUsage.Tables(0).Rows(rowpointer)(colpointer).ToString()
DirectCast(ws.Cells(startuprow, colpointer + 1), Range).Value2 = item
colpointer += 1
End While
colpointer = 0
rowpointer += 1
startuprow += 1
End While
End sub
不知道确切的原因,因为它在中间休息。 无论如何,我们需要增加时间或其他方面吗?
我认为在工作线程完成写入之前,主线程完成并中断工作线程不继续。