基本信息
源码名称:WPF-基于Hsl/Handy开发的inovance(可拓展) plc监控程序
源码大小:16.74M
文件格式:.zip
开发语言:C#
更新时间:2023-11-29
   友情提示:(无需注册或充值,赞助后即可获取资源下载链接)

     嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):813200300

本次赞助数额为: 3 元 
   源码介绍

WPF-基于Hsl/Handy开发的inovance plc读写windowUI程序  并用线程实时捕获数据改变  可拓展其他plc

/// <summary>
/// 读取执行线程
/// </summary>
/// <param name="token"></param>
/// <returns></returns>
public async Task Run(CancellationToken token)
{
    try
    {
        int[] idValue = new int[] { 0, 0 };
        while (!ThreadRun && Task.CurrentId == null)
            await Task.Delay(50);
        DistriBution distri = MainModel.DBList?.Find(x => x.TaskId == Task.CurrentId?.ToString());
        idValue = distri.ISRange();
        while (true)
        {
            for (int i = idValue[0]; i < idValue[1]; i )
            {
                DataGridView.L_DataView[i].Time = DateTime.Now.ToString("HH:mm:ss:fff");
                DataGridView.L_DataView[i].Current = GetValue(
                    DataGridView.L_DataView[i].Name,
                    DataGridView.L_DataView[i].DemoType,
                    DataGridView.L_DataView[i].Dataformat,
                    DataGridView.L_DataView[i].ReadLength,
                    DataGridView.L_DataView[i].ISReversal
                    );
            }
            if (!RefuseMesg.Instance.IsConnect || token.IsCancellationRequested)
                break;
            await Task.Delay(10);//让cpu休眠一下
        }
    }
    catch (Exception ex)
    {
        SaveLog(ex.Message, LogInfo.Error);
    }
}