【发布时间】:2017-10-05 13:58:12
【问题描述】:
问题
生成二维条码矩阵时,每 10000 个文件需要 1 分钟。 如何在更短的时间内生成大量的二维条码矩阵?
下面是我点击按钮时执行的代码。
用于编码数据的库在这个链接中:
http://www.mediafire.com/file/ciadoloynverba7/library_used_for_datamatrix.txt
代码:
Class1 CLS = new Class1();
DataTable dt = CLS.ShowalldataSerial(textBox4.Text);
for (int i = 0; i <= Convert.ToInt32(textBox1.Text); i++)
{
Serial = SRL.Rnd().ToString();
txt = "UserID" + dt.Rows[0][0] + "FirmName" + dt.Rows[0][1] + "OrderNo" + dt.Rows[0][2] + "BtachNo" + dt.Rows[0][3] + "Quantity" + dt.Rows[0][4] + "ProductName" + dt.Rows[0][5] + "SerialNo" + Serial;
dm.DM(txt, Color.FromName(comboBox1.SelectedItem.ToString()), Color.White).Save(root + "\\" + Serial + ".emf", System.Drawing.Imaging.ImageFormat.Emf);
}
MessageBox.Show("Records generated success ");
创建10000需要1分钟,如果我在textbox1中写200000需要20分钟。
代码运行没有任何问题,并给出了我需要的结果,但是生成大量数据的速度很慢,那么我应该怎么做才能更快地生成条形码? image to file generating
【问题讨论】:
-
使用更快的算法?获得更好的 CPU?并行计算?
-
我们不知道
dm是什么,或者dm.DM做什么,或者CLS.ShowalldataSerial做什么。我们不知道您的代码的哪一部分花费了很长时间,或者基本上是什么。请编辑您的问题,使其更加清晰,最好提供minimal reproducible example。 -
(您是否考虑过您使用的 Windows 文件系统可能不擅长将 200,000 个文件存储在一个目录中?您是否尝试过将输出“分块”到不同的目录中?)跨度>