调用带参数的线程两种方法

第一种,用无参方法调用代参方法,用线程调用无参方法

第二种,如代码:

            //带参数的方法
            ParameterizedThreadStart pt = new ParameterizedThreadStart(LoadGridView);
            //加入到线程
            Thread thread = new Thread(pt);
            //允许后台执行
            thread.IsBackground = true;
            //传入参数
            thread.Start("");

有参函数的参数要是object类型例如:

private void LoadGridView(object objCurExcelPath)
        {
            string curExcelPath = objCurExcelPath as string;
        }    

object最后在函数内部转化一下即可

时间: 2025-01-18 07:12:42

调用带参数的线程两种方法的相关文章

【开发实例】C#调用SAPI实现语音合成的两种方法

我们都知道现在的语音合成TTS是可以通过微软的SAPI实现的,好处我就不多说了,方便而已,因为在微软的操作系统里面就自带了这个玩意,主要的方式有两种:  1.使用COM组件技术,不管是C++,C#,Delphi都能玩的转,开发出来的东西在XP和WIN7都能跑.(要引入SpeechLib,好像在项目上点引用,然后选到系统COM吧,好久没弄,记不清楚了)  2.使用WIN7的windows api,其实最终还是调用了SAPI,所以开发出来的东西就只能在WIN7上面跑.  其实不管是哪一种,都是调用S

获取网页URL地址及参数等的两种方法(js和C#)

转:获取网页URL地址及参数等的两种方法(js和C#) 一 js 先看一个示例 用javascript获取url网址信息 <script type="text/javascript"> document.write("location.host="+location.host+"<br>"); document.write("location.hostname="+location.hostname+&

Hibernate 带参数查询的两种方式

1.使用?通配符 public User validate(String userName, String password) { String hql = "from User u where u.userName = ? and u.password = ?"; User user = null; List<User> list = ht.find(hql, new Object[]{userName, password}); if (list.size()!=0){

MathType插入带序号公式的两种方法

方法一: 由于我之前使用表格15% 70% 15%来布局的,所以最开始相的就是如何录入公示后插入公式序号,如下图所示 先设置序号格式 录好公式后点“Insert Number”就好了,这样的话需要紧挨着公式,用空格把他空到最右侧就好了,我是Office 2013. 方法二: 我看别人排版论文,需要直接是在最右侧 点击弹出公式编辑器,编好公式后,右侧直接已经有编码了,编码格式的设置可能来自于第一种方法(猜测). 猜测错了,这样的话编号一直是“(1)”,未变化,按如下格式设置就好了

java创建线程两种方法

/* 进程:是一个正在执行中的程序 每一个进程执行都有执行顺序,该顺序是一个执行路径,或叫控制单元 线程:就是进程中一个独立的控制单元 线程在控制着进程的执行 一个进程至少包含一个线程 Java VM 启动时会有个进程java.exe 该进程中至少有一个线程复制java程序的执行,这个线程运行的代码存在于main方法中, 该线程称之为主线程 JVM启动不止一个线程,还有复制垃圾回收机制的线程 创建线程:(1)继承Thread类;复写run方法;创建对象,调用start方法 (2)实现Runnab

[设计模式]两种方法实现简单工厂模式

<!--完整代码下载链接:点击下载完整代码示例--> 1.描述 在项目开发中经常会遇到根据不同的条件创建不同的对象,然后对该对象进行操作,一般都包括许多的switch -case分支如下: CBase* pBase(NULL); switch (type_variable) { case obj1: pBase = new CBaseDerivate1();break; case obj2: pBase = new CBaseDerivate2();break; ... case objN:

Jmeter 跨线程组传递参数 之两种方法

终于搞定了Jmeter跨线程组之间传递参数,这样就不用每次发送请求B之前,都需要同时发送一下登录接口(因为同一个线程组下的请求是同时发送的),只需要发送一次登录请求,请求B直接用登录请求的参数即可,直到登录接口的参数失效了,需再次发送一次登录接口,又可以多次使用其参数,下面举例子: 1.登录接口中利用 Json Path Extractor 获取到登录接口的响应参数,(怎么获取上一节讲过) 终于搞定了Jmeter跨线程组之间传递参数,这样就不用每次发送请求B之前,都需要同时发送一下登录接口(因为

线程的启动的两种方法,Runnable接口,run()的调用

实现并启动线程有两种方法1.写一个类继承自Thread类,重写run方法.用start方法启动线程2.写一个类实现Runnable接口,实现run方法.用new Thread(Runnable target).start()方法来启动 多线程原理:相当于玩游戏机,只有一个游戏机(cpu),可是有很多人要玩,于是,start是排队!等CPU选中你就是轮到你,你就run(),当CPU的运行的时间片执行完,这个线程就继续排队,等待下一次的run(). 调用start()后,线程会被放到等待队列,等待C

自制Javascript分页插件,支持AJAX加载和URL带参跳转两种初始化方式,可用于同一页面的多个分页和不同页面的调用

闲话部分 最近闲着实在无聊,就做了点小东西练练手,由于原来一直在用AspNetPager进行分页,而且也进行了深度的定制与原有系统整合的也不错,不过毕竟是用别人的,想着看自己能试着做出来不能,后台的分页插件已经有比较成熟的了,那就自己试着写一个前台分页吧. 话不多说,先上效果图: 优点与缺点 来说说优缺点吧,首先AspNetPager是后台分页控件,所以在向客户端回传HTML文档之前生成HTML阶段 就会把分页代码生成完毕,然后回传,而JS是前端代码,就是HTML文档在服务器组织完毕往客户端传送