我正在尝试优化我创建的备份程序。代码很草率,因为它是我的第一个如此规模的程序,但希望你能超越它。
该程序运行良好,但似乎花费的时间比必要的要长。所以我正在玩弄 Parallel.ForEach 来帮助优化压缩过程。
现在,我让程序按以下方式执行压缩任务
Dim Destin = JobNode.SelectNodes("Destination")
For Each item As System.Xml.XmlNode In Destin
Dim time As DateTime = DateTime.Now
Dim format As String = "MMMddyyyy"
Dim zpath As String = item.InnerText
'replaces [date] in destination with actual Date
If time.DayOfWeek = 1 Then
time = time.AddDays(-1)
item.InnerText = Replace(item.InnerText, "[date]", time.ToString(format) & "_WE")
zpath = item.InnerText
zip.ParallelDeflateThreshold = -1
zip.Save(zpath)
Else
Dim time1 As DateTime = DateTime.Now.AddDays(-1)
item.InnerText = Replace(item.InnerText, "[date]", time1.ToString(format))
zpath = item.InnerText
zip.ParallelDeflateThreshold = -1
zip.Save(zpath)
End If
Next
我已将所有源位置和目标位置保存到 xml 文件中以供阅读。这对于每个循环都按我想要的方式工作。但是,我无法将此 For each 循环转换为 Parallel.ForEach 循环。
你能帮忙的话,我会很高兴。再说一次,在编程方面我仍然很年轻,所以对我来说是愚蠢的。
是的......我在互联网上寻求帮助,但它要么让我感到困惑,要么在我的上下文中不起作用,要么我无法让它与我的代码一起使用。