ExeCuteManager

本文介绍了执行管理器类如何使用线程ID和线程池线程状态来管理和报告线程操作的状态变化,通过实例展示了如何在执行过程中记录关键信息。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;
using WindowsFormsApplication3.Jobs;
using WindowsFormsApplication3.DataStorge;
using WindowsFormsApplication3.Enums;

namespace WindowsFormsApplication3.Jobs.Operation_System
{
    public class ExeCuteManager:BaseJob
    {

        public ExeCuteManager(CheckoutContext checkoutContext, CheckoutStep checkoutStep) : base(checkoutContext, checkoutStep) { }


        public override void Execute(object _stateInfo)
        {
            int IntNumber = (int)_stateInfo;
            //获得当前线程的哈希码(标识线程在线程池中的唯一)
            int ThisThreadNumber = Thread.CurrentThread.GetHashCode();
            //指示当前线程是否属于托管线程池
            bool isThreadPool = Thread.CurrentThread.IsThreadPoolThread;
            string strTip = string.Format("请求 {0} 开始,线程哈希码为{1},是否为线程池线程:{2},...", IntNumber, ThisThreadNumber, isThreadPool.ToString());
            ReportStateChange(strTip, IntNumber, false);

            Thread.Sleep(4000);
            strTip = string.Format("请求 {0} 执行结束!", IntNumber);
            ReportStateChange(strTip, IntNumber, true);

        }
    }
    
}

转载于:https://www.cnblogs.com/rosizel/p/3857313.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值