public Form1()
{
InitializeComponent();
}
Thread t;
private void button1_Click(object sender, EventArgs e)
{
int num = int.Parse(this.textBox1.Text);
int num2 = int.Parse(this.textBox2.Text);
duo a = new duo();
a.num1 = num;
a.num2 = num2;
t = new Thread(test); t.IsBackground = true;
t.Start(a); } private void test(object num)
{
duo a = num as duo; //int n = 0;
//while (n < 10000)
//{ // n++;
// this.textBox1.Text = n.ToString(); //}
int n = a.num1;
int b = a.num2; this.label1.Text = Convert.ToString((n + b) * b / 2); } private void Form1_Load(object sender, EventArgs e)
{
Control.CheckForIllegalCrossThreadCalls = false;
} private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{ }
}

  

数组

public partial class Form1 : Form
{ public Form1()
{
InitializeComponent();
}
Thread t;
private void button1_Click(object sender, EventArgs e)
{
int num = int.Parse(this.textBox1.Text);
int num2 = int.Parse(this.textBox2.Text);
int[] a = new int[] { num,num2};
t = new Thread(test); t.IsBackground = true;
t.Start(a); } private void test(object num)
{
int[] nums=(int[])num; //int n = 0;
//while (n < 10000)
//{ // n++;
// this.textBox1.Text = n.ToString(); //}
int n = nums[0];
int b = nums[1]; this.label1.Text = Convert.ToString((n + b) * b / 2); } private void Form1_Load(object sender, EventArgs e)
{
Control.CheckForIllegalCrossThreadCalls = false;
} private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{ }
}

  

集合

public partial class Form1 : Form
{
List<int> add = new List<int>(); public Form1()
{
InitializeComponent();
}
Thread t;
private void button1_Click(object sender, EventArgs e)
{
add.Clear();
int num = int.Parse(this.textBox1.Text);
int num2 = int.Parse(this.textBox2.Text);
add.Add(num);
add.Add(num2); t = new Thread(test); t.IsBackground = true;
t.Start(add); } private void test(object num)
{
//int nums=(int)num;
List<int> nums = (List<int>)num; //int n = 0;
//while (n < 10000)
//{ // n++;
// this.textBox1.Text = n.ToString(); //}
int n = nums[0];
int b = nums[1]; this.label1.Text = Convert.ToString((n + b) * b / 2); } private void Form1_Load(object sender, EventArgs e)
{
Control.CheckForIllegalCrossThreadCalls = false;
} private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{ }
}

  

C#之参数线程的更多相关文章

  1. c#创建带参数的线程

    1.无参数线程的创建 Thread thread = new Thread(new ThreadStart(getpic)); thread.Start(); private void showmes ...

  2. JUC 并发编程--08,线程池,三大方法,七大参数,4种拒绝策略,代码演示

    三大方法: //线程池核心线程数为n, 最大线程数为 n ExecutorService fixedThreadPool = Executors.newFixedThreadPool(n); 源码: ...

  3. 聊下并发和Tomcat线程数(错误更正)

    本文前半部分结论存在严重错误,请看最后2015-1-20更新部分. 最近一直在解决线上一个问题,表现是: Tomcat每到凌晨会有一个高峰,峰值的并发达到了3000以上,最后的结果是Tomcat线程池 ...

  4. windows核心编程 - 线程基础

    一.基本概念: 一个进程至少需要一个线程. 组成:一个线程包括仅包括一个线程堆栈和一个线程内核对象 线程堆栈:用于维护线程在执行代码时需要的所有函数参数和局部变量 线程内核对象:操作系统用它来对线程实 ...

  5. 【Swing】理解Swing中的事件与线程

    talk is cheap , show me the code. Swing中的事件 事件驱动 所有的GUI程序都是事件驱动的.Swing当然也是. GUI程序不同于Command Line程序,一 ...

  6. Linux线程学习(一)

    一.Linux进程与线程概述 进程与线程 为什么对于大多数合作性任务,多线程比多个独立的进程更优越呢?这是因为,线程共享相同的内存空间.不同的线程可以存取内存中的同一个变量.所以,程序中的所有线程都可 ...

  7. C# 线程--第一单线程基础

    概念 什么是进程? 当一个程序被打开运行时,它就是一个进程.在进程中包括线程,进程可以由一个或多个线程组成. 什么是线程? 线程是程序执行流的最小单元.一个标准的线程由线程ID,当前指令指针(PC), ...

  8. java-多线程-join函数

    join()>>不带参数 线程A调用线程B.join,意思就是线程A并入了线程B,当执行完线程B,再去执行线程A后续动作 join(int keepTims)>>带参数,与上面 ...

  9. 关于windows线程同步的四种方法

    #include "stdafx.h" #include "iostream" #include "list" #include " ...

随机推荐

  1. Make Rules

    target: components ls TAB rule main:main.o mytool1.o mytool2.o gcc -o main main.o mytool1.o mytool2. ...

  2. Java基础之创建窗口——使用网格布局管理器(TryGridLayout)

    控制台程序. 网格布局管理器可以在容器的矩形网格中布局组件. import javax.swing.*; import java.awt.*; import javax.swing.border.Et ...

  3. CMOS and BIOS

    1,cmos简介.   cmos是主板上一块可读写的RAM芯片.用途:主要用来保存当前系统的硬件配置和操作人员对某些参数的设定.cmos芯片是由一块纽扣电池供电.因此在关机状态内部信息也不会丢失. 2 ...

  4. 传递闭包+二进制位运算+floyd(poj2570)

    Fiber Network Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 3125   Accepted: 1436 Des ...

  5. nyist 240 小明的调查统计(二)

    http://acm.nyist.net/JudgeOnline/problem.php?pid=240 小明的调查统计(二) 时间限制:1000 ms  |  内存限制:65535 KB 难度:1 ...

  6. extjs实现简单的多文件上传(不借助任何插件),以及包含处理上传大文件的错误的各种处理办法

    在extjs的学习过程中,有遇到过有关多文件上传的问题,但是网上的大多数都是专门的去实现多文件上传而去做的组件之类的,没有特别简单的方式,于是小白便做了下面的内容,只是通过动态的去添加extjs的自带 ...

  7. javascript浏览器对象

    window对象 1.window对象 window对象是BOM的核心,window对象指当前的浏览器窗口 所有JS全局对象.函数以及变量均自动成为window对象的成员 全局变量是window对象的 ...

  8. Cocos2d-x游戏开发之计时器

    首先写一个计时器的头文件GameTimer.h: #ifndef _GAME_TIMER_H_ #define _GAME_TIMER_H_ #include "cocos2d.h" ...

  9. 三台CentOS 5 Linux LVS 的DR 模式http负载均衡安装步骤

    Linux负载均衡软件LVS(概念篇) 一. LVS简介 LVS是Linux Virtual Server的简称,也就是Linux虚拟服务器, 是一个由章文嵩博士发起的自由软件项目,它的官方站点是ww ...

  10. angular Creating a Directive that Adds Event Listeners

    <span my-draggable>Drag ME</span> angular.module('dragModule', []) .directive('myDraggab ...