• 线程


    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Threading;
    using System.Threading.Tasks;
    using System.Windows.Forms;

    namespace WindowsFormsApp1
    {
    public partial class Form1 : Form
    {
    public Form1()
    {
    InitializeComponent();
    }
    Thread thread;

    /// <summary>
    /// 启动线程
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    private void button1_Click(object sender, EventArgs e)
    {

    ThreadStart threadStart = new ThreadStart(SetText);
    thread = new Thread(threadStart);
    thread.Start();
    }
    /// <summary>
    /// 睡眠
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    private void button2_Click(object sender, EventArgs e)
    {
    Thread.Sleep(5000);
    }

    /// <summary>
    /// 挂起
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    [Obsolete]
    private void button3_Click(object sender, EventArgs e)
    {


    if (thread.ThreadState!=ThreadState.Suspended)
    {
    thread.Suspend();
    }

    }

    /// <summary>
    /// 恢复
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    [Obsolete]
    private void button4_Click(object sender, EventArgs e)
    {
    if (thread.ThreadState == ThreadState.Suspended)
    {
    thread.Resume();
    }
    }

    /// <summary>
    /// 终止线程
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    private void button5_Click(object sender, EventArgs e)
    {
    thread.Abort();
    }
    /// <summary>
    /// 带参数线程
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    private void button6_Click(object sender, EventArgs e)
    {

    ThreadStart threadStart = new ThreadStart(SetTextTwo);
    thread = new Thread(threadStart);
    thread.Start();

    }

    /// <summary>
    /// 文本框赋值
    /// </summary>
    /// <param name="par"></param>
    public void SetText()
    {
    for (int i = 0; i <= 100000; i++)
    {
    textBox2.Invoke(new Action(() => { textBox2.Text = "第" + i + "条记录同步完成"; }));
    progressBar1.Invoke(new Action(() => { progressBar1.Value = i; }));
    label2.Invoke(new Action(() => { label2.Text = Math.Round(Convert.ToDouble(i) / 1000.00, 2) + "%"; }));
    }
    }


    /// <summary>
    /// 文本框赋值
    /// </summary>
    /// <param name="par"></param>
    public void SetTextTwo()
    {
    for (int i = 0; i <= 100000; i++)
    {
    textBox2.Invoke(new Action(() => { textBox2.Text=$"[{textBox1.Text}]第" + i + "条记录同步完成"; }));
    progressBar1.Invoke(new Action(() => { progressBar1.Value = i; }));
    label2.Invoke(new Action(() => { label2.Text = Math.Round(Convert.ToDouble(i) / 1000.00, 2) + "%"; }));
    }
    }

    }
    }

  • 相关阅读:
    最新 蓝鲸人java校招面经 (含整理过的面试题大全)
    最新 上海轻轻java校招面经 (含整理过的面试题大全)
    最新 苏州朗动java校招面经 (含整理过的面试题大全)
    最新 医渡云java校招面经 (含整理过的面试题大全)
    变量的自动类型转换和强制类型转换(day01_10)
    java的数据类型(day01_09)
    常用的dos命令操作(day01_03)
    1.镜像-虚拟光驱-光驱
    Spring基于配置文件的方式来配置AOP
    Spring-AOP(切面的优先级&&&重用切点表达式)
  • 原文地址:https://www.cnblogs.com/ryzryz/p/12159905.html
Copyright © 2020-2023  润新知