
问个C# 多线程问题,求代码,谢谢
我希望点击按钮,同时执行三个不同的任务,比如task1(),task2(),task3(),是同时执行!有没有什么办法?我不想用下面的办法,感觉麻烦Threadt=new...
我希望点击按钮,同时执行三个不同的任务,比如task1(),task2(),task3(),是同时执行!有没有什么办法?我不想用下面的办法,感觉麻烦
Thread t=new Thread(new Threadstart(task1)); //创建线程
task1.start();
Thread t=new Thread(new Threadstart(task2)); //创建线程
task2.start();
....
求指导下用什么办法,我是新手希望贴出实例代码,谢谢 展开
Thread t=new Thread(new Threadstart(task1)); //创建线程
task1.start();
Thread t=new Thread(new Threadstart(task2)); //创建线程
task2.start();
....
求指导下用什么办法,我是新手希望贴出实例代码,谢谢 展开
2个回答
展开全部
不知道你说的同时执行是指什么意思?如果是字面意思的同时执行的话,几乎没有可能。或者你想说的是下面的意思?
var starts = new ThreadStart[] {task1, task2, task3};
var threads = Array.ConvertAll(starts, start => new Thread(start));
Array.ForEach(threads, thread => thread.Start());
追问
我的意思是,程序一般执行是按顺序的,比如先执行task1,再task2,task3,我想实现的是,程序执行互不影响,同时执行
追答
线程执行的时候就是互不影响,同时执行的。
Start函数只是启动了线程就会返回,并不会等待线程运行结束的。Start函数返回后,线程继续运行,直到线程函数返回。而在第一个线程执行的时候,可以再Start另一个线程。如此循环,直到所有线程都启动。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询