資源簡介
C#多線程并行管理,通過Task實現,可對單個任務進行暫停,繼續以及停止等操作,每個任務均有單獨的進度條顯示
同時執行的任務個數可以自行設置

代碼片段和文件信息
using?GLDataMergeTools.Control;
using?ITaskHelper;
using?System;
using?System.Windows.Forms;
using?TaskManager;
using?TaskModels;
///?
///?多任務操作Demo
///?可暫停、停止
///?Denny?
///?2018-06-25
///?QQ:263709213
///?
namespace?GLDataMergeTools
{
????public?partial?class?MainForm?:?Form
????{
????????public?MainForm()
????????{
????????????InitializeComponent();
????????}
????????private?void?MainForm_Load(object?sender?EventArgs?e)
????????{
????????????InitializeListView();
????????}
????????private?void?InitializeListView()
????????{
????????????this.nListView1.Columns.Add(“序號“?60?HorizontalAlignment.Left);?//一步添加?
????????????this.nListView1.Columns.Add(“名稱“?200?HorizontalAlignment.Left);?//一步添加
????????????this.nListView1.Columns.Add(“狀態“?100?HorizontalAlignment.Center);?//一步添加
????????????this.nListView1.Columns.Add(“進度“?160?HorizontalAlignment.Left);?//一步添加
????????????this.nListView1.Columns.Add(“描述“?280?HorizontalAlignment.Left);?//一步添加
????????????this.nListView1.Columns.Add(new?NListView.ColumnSortHeader(“時間“?140?HorizontalAlignment.Right));?//一步添加
????????????this.nListView1.ProgressColumnIndex?=?3;
????????}
????????int?Index?=?0;
????????private?void?button1_Click(object?sender?EventArgs?e)
????????{
????????????ListViewItem?lvi?=?new?ListViewItem();
????????????lvi.Text?=?Convert.ToString(++Index);
????????????lvi.SubItems.Add($“任務{Index}“);
????????????lvi.SubItems.Add(“未配置參數“);
????????????lvi.SubItems.Add(Convert.ToString(0));
????????????lvi.SubItems.Add(““);
????????????lvi.SubItems.Add(DateTime.Now.ToString(“g“));
????????????this.nListView1.Items.Add(lvi);
????????}
????????TaskManage?taskManage;
????????private?void?button2_Click(object?sender?EventArgs?e)
????????{
????????????taskManage?=?new?TaskManage(5);
????????????foreach?(ListViewItem?lvi?in?this.nListView1.Items)
????????????{
????????????????TaskProperty?taskProperty?=?new?TaskProperty();
????????????????taskProperty.ID?=?int.Parse(lvi.SubItems[0].Text);
????????????????ITask?t?=?new?Task_DataMergeV2.DataMerge();
????????????????Action?action?=?new?Action(()?=>
???????????????{
???????????????????//?ITask?t?=?new?Task_DataMergeV2.DataMerge();
???????????????????t.SetParm(taskProperty);
???????????????????t.AppendProIndexEventArgs?+=?T_AppendProIndexEventArgs;
???????????????????t.Start();
???????????????});
????????????????taskProperty.Itask?=?t;
????????????????taskProperty.GetAction?=?action;
????????????????taskManage.AppendTask(taskProperty);
????????????}
????????????taskManage.Start();
????????}
????????private?void?T_AppendProIndexEventArgs(int?id?int?index?int?total)
????????{
????????????setProgress(id?index?total);
????????}
????????public?void?setProgress(int?index?int?i?int?total)
????????{
????????????float?progress?=?i?*?100.0f?/?total;
????????????this.Invoke((MethodInvoker)(()?=>
????????????{
????????????????foreach?(Li
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
????..A..H.?????96768??2018-06-25?09:23??GLDataMergeTools\.vs\GLDataMergeTools\v15\.suo
?????文件????1245184??2018-06-25?09:22??GLDataMergeTools\.vs\GLDataMergeTools\v15\sqlite3\storage.ide
?????文件????????161??2018-06-21?09:26??GLDataMergeTools\GLDataMergeTools\app.config
?????文件??????67344??2018-06-21?09:32??GLDataMergeTools\GLDataMergeTools\bin\Debug\Config\Skin\bg\bg01.jpg
?????文件??????31556??2018-06-21?09:32??GLDataMergeTools\GLDataMergeTools\bin\Debug\Config\Skin\bg\bg02.jpg
?????文件??????29550??2018-06-21?09:32??GLDataMergeTools\GLDataMergeTools\bin\Debug\Config\Skin\bg\bg03.jpg
?????文件??????25148??2018-06-21?09:32??GLDataMergeTools\GLDataMergeTools\bin\Debug\Config\Skin\bg\bg04.jpg
?????文件??????24182??2018-06-21?09:32??GLDataMergeTools\GLDataMergeTools\bin\Debug\Config\Skin\bg\bg05.jpg
?????文件??????17769??2018-06-21?09:32??GLDataMergeTools\GLDataMergeTools\bin\Debug\Config\Skin\bg\bg06.jpg
?????文件?????????77??2018-06-21?09:32??GLDataMergeTools\GLDataMergeTools\bin\Debug\Config\Skin\BlueSea.config
?????文件?????????77??2018-06-21?09:32??GLDataMergeTools\GLDataMergeTools\bin\Debug\Config\Skin\KissOfAngel.config
?????文件?????????77??2018-06-21?09:32??GLDataMergeTools\GLDataMergeTools\bin\Debug\Config\Skin\NoFlower.config
?????文件?????????77??2018-06-21?09:32??GLDataMergeTools\GLDataMergeTools\bin\Debug\Config\Skin\SunsetRed.config
?????文件????????181??2018-06-21?09:32??GLDataMergeTools\GLDataMergeTools\bin\Debug\Config\Skin.config
?????文件?????????35??2018-06-21?09:33??GLDataMergeTools\GLDataMergeTools\bin\Debug\Config\Skin.ini
?????文件??????22528??2018-06-25?09:18??GLDataMergeTools\GLDataMergeTools\bin\Debug\GLDataMergeTools.exe
?????文件????????161??2018-06-21?09:26??GLDataMergeTools\GLDataMergeTools\bin\Debug\GLDataMergeTools.exe.config
?????文件??????44544??2018-06-25?09:18??GLDataMergeTools\GLDataMergeTools\bin\Debug\GLDataMergeTools.pdb
?????文件???????4608??2018-06-21?16:14??GLDataMergeTools\GLDataMergeTools\bin\Debug\ITaskHelper.dll
?????文件???????7680??2018-06-21?16:14??GLDataMergeTools\GLDataMergeTools\bin\Debug\ITaskHelper.pdb
?????文件???????7680??2018-06-25?09:18??GLDataMergeTools\GLDataMergeTools\bin\Debug\TaskManager.dll
?????文件??????19968??2018-06-25?09:18??GLDataMergeTools\GLDataMergeTools\bin\Debug\TaskManager.pdb
?????文件???????6144??2018-06-25?09:18??GLDataMergeTools\GLDataMergeTools\bin\Debug\TaskModels.dll
?????文件??????15872??2018-06-25?09:18??GLDataMergeTools\GLDataMergeTools\bin\Debug\TaskModels.pdb
?????文件???????5632??2018-06-25?09:18??GLDataMergeTools\GLDataMergeTools\bin\Debug\Task_DataMergeV2.dll
?????文件??????13824??2018-06-25?09:18??GLDataMergeTools\GLDataMergeTools\bin\Debug\Task_DataMergeV2.pdb
?????文件??????15595??2018-06-21?10:32??GLDataMergeTools\GLDataMergeTools\Controls\NListView.cs
?????文件???????1237??2018-06-21?10:32??GLDataMergeTools\GLDataMergeTools\Controls\NListView.designer.cs
?????文件???????5817??2018-06-21?10:31??GLDataMergeTools\GLDataMergeTools\Controls\NListView.resx
?????文件???????5230??2018-06-25?09:22??GLDataMergeTools\GLDataMergeTools\GLDataMergeTools.csproj
............此處省略134個文件信息
- 上一篇:ovalshape c# 指示燈控件
- 下一篇:C#銀行管理系統源代碼
評論
共有 條評論