请问这个问题是否可以用多线程解决? DataGridView有5000条记录,我现在是通过循环逐条记录处理。但是速度有点慢。我现在想通过多个线程处理,不知道是否可以实现?也就是分5个线程处理这5000条记录,每个线程处理1000条。请问这种可以实现吗?由于我对多线程不太了解,麻烦各位给出简单示范或者代码最好了,谢谢。还有,通过TIMER是否可以实现这种功能? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你要说明哪些阻塞式操作使得CPU利用率很低,只有这个时候才可能需要多线程编程。仅凭你所说的这只言片语,我看不出有什么多线程编程的必要。 我觉得在个位数CPU核心的机器的情况下 多线程更多的还是解决了同时做多件事情的问题 而不是执行快慢的问题~ 开多线程不是白开的 线程间切换有上下文开销 搞不好比原来还要慢 要是你拿了个8核的cpu来做这个五个线程的任务那就另当别论了 一个线程处理5000记录需要5分钟,分成五个线程抢占CPU,那么每一个线程处理1000条记录可能反而需要6分钟,最后你分成5个线程处理结果可能就需要6分钟才完成。给你时间,慢慢搞懂什么是多线程吧。 一般像这样问题使用委托就搞定了,是否使用几个线程还规定处理数量从来没考虑过,看起来就很麻烦.this.BeginInvoke(new Action(() => {/*放进原代码*/})); 博客群发功能的软件谁会做啊?(急) 如何通过.net2003开发发送邮件的功能 datagridview与combobox合用的问题 datagrid 中的某些cell需要进行更新,怎么操作 问了很久,没人答,有关DataTable与DataGrid的问题。 一个关于进度条的问题 怎样在ListView里面直接进行编辑呢? 请问这样的功能怎样实现 对于内部用途和新的托管对象 确保要有足够的内存 webApi 使用Owin 实现Oauth2.0认证,token要如何存入数据库并验证? C#中listbox问题 一共有N个线程,可以同时M个线程并发(M<N)。如何实现才能有效控制资源占用?
一个线程处理5000记录需要5分钟,分成五个线程抢占CPU,那么每一个线程处理1000条记录可能反而需要6分钟,最后你分成5个线程处理结果可能就需要6分钟才完成。给你时间,慢慢搞懂什么是多线程吧。
this.BeginInvoke(new Action(() => {/*放进原代码*/}));