C#,往线程里传带参数的方法

问题描述

List<SyncTableInfo>listTables=GetSyncTables();listTables=listTables.OrderBy(n=>n.Sort).ToList();string[]dataSource=new[]{"etl_scn","etl_aisien","erp-xy"};Thread[]thread=newThread[dataSource.Count()];for(inti=0;i<dataSource.Count();i++){vardataSourceItem=dataSource[i];thread[i]=newThread(obj=>SyncThreadMethod(listTables,dataSourceItem));thread[i].Start();}

解决方案

解决方案二:
需要向线程传参我一般是这样做的:1.新建一个类,在实例化这个类的时候把参数设置进去2.启动线程
解决方案三:

解决方案四:

解决方案五:
你不是写出来了么,用那个obj就可以传了。
解决方案六:
ThreadthreadHand1=newThread(delegate(){threadHand1_Run(timeStart,timeEnd);});threadHand1.Start();

解决方案七:
线程传参要么用Thread.Start(object);传要么用委托传要么把线程封装到类里,用类属性传
解决方案八:
listTables,dataSourceItem静态然后建立一个类类根据listTables,dataSourceItem执行不同的动作
解决方案九:
引用

线程传参要么用Thread.Start(object);传要么用委托传要么把线程封装到类里,用类属性传

解决方案十:
引用8楼nongfuxu的回复:

引用
线程传参要么用Thread.Start(object);传要么用委托传要么把线程封装到类里,用类属性传

用object传比较简单,符合函数使用习惯。封装在类中也是好办法。

时间: 2024-07-28 22:10:20

C#,往线程里传带参数的方法的相关文章

C#线程调用带参数的方法

在 .NET Framework 2.0 版中,要实现线程调用带参数的方法有两种办法. 第一种:使用ParameterizedThreadStart. 调用 System.Threading.Thread.Start(System.Object) 重载方法时将包含数据的对象传递给线程. 使用 ParameterizedThreadStart 委托不是传递数据的类型安全的方法,因为 System.Threading.Thread.Start(System.Object) 方法重载接受任何对象. 这

C#创建线程带参数的方法_C#教程

1.无参数线程的创建 Thread thread = new Thread(new ThreadStart(getpic)); thread.Start(); private void showmessage() { Console.WriteLine("hello world"); } 2.带一个参数的线程 使用ParameterizedThreadStart,调用 System.Threading.Thread.Start(System.Object) 重载方法时将包含数据的对象传

在java中实现C#语法里的按引用传递参数的方法_java

在C#中,在次函数中调用时改变了其中的数值,主函数中也将发生改变 ref 关键字使参数按引用传递.其效果是,当控制权传递回调用方法时,在方法中对参数所做的任何更改都将反映在该变量中.若要使用 ref 参数,则方法定义和调用方法都必须显式使用 ref 关键字 out 关键字会导致参数通过引用来传递.这与 ref 关键字类似,不同之处在于 ref 要求变量必须在传递之前进行初始化.若要使用 out 参数,方法定义和调用方法都必须显式使用 out 关键字. Java里面不像C#那样,Java只有对象类

ASP代码实现301重定向及带参数的方法

  由于改版需要,烈火网的一个栏目需要做301重定向,这是很久以前的烈火导航下的一个搜索,使用的是asp语言,但是蜘蛛喜欢,因此不能删除,只好写一个301重定向,但是原来的很多网址都是有参数的,例如TAG标签,形式如:liehuo_tag.asp?q=%C1%D2%BB%F0%CD%F8. 研究了一下,解决了301重定向带参数的问题,特来向大家分享,欢迎朋友多支持烈火网. 代码如下: <% if request.ServerVariables("HTTP_HOST")="

struts2.0的validation框架里的带参数的国际化应该怎样处理?

问题描述 <fieldname="age"><field-validatortype="int"><paramname="min">1</param><paramname="max">10</param><message>年龄必须在${min}和${max}之间</message></field-validator>&l

在命令行下运行PHP脚本[带参数]的方法_php技巧

创建一个简单的文本文件,其中包含有以下PHP代码,并把它保存为hello.php: 复制代码 代码如下: <?php echo "Hello from the CLI"; ?> 现在,试着在命令行提示符下运行这个程序,方法是调用CLI可执行文件并提供脚本的文件名: #php phphello.php 输出Hello from the CLI 使用标准的输入和输出 你可以在自己的PHP脚本里使用这三个常量,以接受用户的输入,或者显示处理和计算的结果.要更好地理解这一点,可以看

C#带参数运行方法

比如aa.exe -autoaa.exe -main两组后缀,要求分别运行aa的某个线程,比如aa.exe -auto打开from1,aa.exe -main打开from2由于需要修改Program的Main方法,需要更加谨慎,因为一个结构清晰的Main对于后期维护是一个很好的帮助.以下的代码将解析参数,构造启动窗体,启动窗体三个逻辑分割为三个方法 Code 1 static class Program 2     { 3         /// <summary> 4         ///

ObjectDataSource控件的select方法如何应用类似select(sql)带参数的方法

问题描述 比如我有一个Result类,其中有一个Result.SearchResult(strSQL)的select方法,这个类还有更新,删除方法,我现在已经指定了更新,删除方法,而且Result.SearchResult(strSQL)也以指定,其中的strSql参数指定为None,strSQL是通过组合选择拼接而成的,我想让ObjectDataSource在程序中指定strSQL,完整的代码如何写?this.ResutlObjectDataSource.SelectParameters["s

get方式带参数请求方法

直接贴代码,JS代码如下: var opt ={ url : urlConfig.interfaceUrl.project_interfaceConfig.getProjectSets, type : 'GET', data : { hid : hospId } }; alert(JSON.stringify(opt)); ri.getData(opt,function(data){ alert(1111); alert(JSON.stringify(data)); //$scope.proje