当前位置: 首页 > news >正文

C# 窗体应用(.FET Framework) 线程操作方法

一、Thread线程使用方法

  1. 初始化方法
Thread th1;
th1 = new Thread(方法名);
th1.IsBackground = true;
th1.Start();
  1. 传参
///定义一个object接受参数的方法
private void Test(object n){
    string str1 = n as string;
MessageBox.Show(str1);
}

// 调用方法
Thread th2
string str1 = “我是线程2;
th2 = new Thread(Test);
th2.isBackground = true;
th2.Start(str1);  // 这边在启动的时候传递参数
  1. 加入线程池
ThreadPool.QueueUserWorkItem(方法名);
  1. 关闭线程
Private void Form1_FormClosing(){
   th1.Abort();
}

二、ThreadPool 线程使用方法

ThreadPool.QueueUserWorkItem((str)=> {代码块}, “线程参数”);

三、解决跨线程调用组件

  1. 使用一行代码解决(代码多不推荐)
// 在 Form1() 方法中加入以下代码
CheckForIllegalCrossThreadCalls = false;
  1. 在线程调用的方法中组件使用委托
组件.BeginInvoke(new Action<变量类型>((变量)=>{代码块}), 形参);
textBox1.BeginInvoke(new Action<string>((str) => {
    textBox1.Text += str;
}), "111111\r\n");
http://www.dtcms.com/a/104099.html

相关文章:

  • spring boot 整合redis
  • JAVA设计模式之适配器模式《太白金星有点烦》
  • 百度文库免费下载器
  • 【算法day28】解数独——编写一个程序,通过填充空格来解决数独问题
  • 聊一聊,元件封装知多少?
  • 数据结构C语言练习(两个栈实现队列)
  • go游戏后端开发19:创建房间
  • 机器人基础知识-2
  • 万字知识篇(2):SpringBoot的常用注解(上)
  • C++学习笔记(三十三)——forward_list
  • zk基础—2.架构原理和使用场景二
  • 数字图像处理实验报告7-图像压缩编码
  • Python 责任链模式
  • 蓝桥云客 2022
  • 坚持的力量与智慧策略
  • cv2.fillPoly()和cv2.polylines()
  • 【分布式】Hystrix 的核心概念与工作原理​
  • Java的设计模式详解
  • 【数论4】求解线性同余方程和方程组
  • FPGA | 等精度测频应用与实践
  • RSTP --- 快速生成树
  • 如何成功点亮LED灯并实现闪烁效果
  • ROS软路由多wifi多IP搭建一览表
  • 红黑树剖析
  • DirectX修复工具免费版下载安装教程(附安装包)
  • 蓝桥杯 XYZ
  • elementui中el-form自定义表单校验规则
  • Java后端开发(十八)-- 使用JAXB,将JavaBean转换XML文本
  • 基础知识专题整理-----持续更新
  • lib-zo,C语言另一个协程库,整理