C#多线程的作用是啥?

刚工作没多久,在学校接触的都是普通代码操作,感觉写出来的代码执行效率好慢。于是想到了多线程,但是对于多线程还是半懂不懂,想找人帮忙梳理一下。
我对于多线程的理解是这样的,比如我现在代码的功能是操作一个word模板,模板里有多个表,每个表都需要遍历循环操作每个单元格。按照普通代码操作是循环遍历完一个表之后才能操作下一个表,而多线程的作用则是创建多个线程,每个线程同步循环遍历一个或多个表,在硬件设备支持的条件下,有多少个线程就相当于提高了多少倍的执行效率。
不知道这样的理解是对是错,一样有人帮忙解答一下!

2个回答

可以这么理解, 但是 在做异步处理时, 有时会出现资源冲突,比如说, 你说遍历表的时候,如果这个文件被之前的程序打开了, 那你新开的线程就无法再操作而报异常。
所以多线程并不是很有效率的办法,提高系统的效率要从你的算法入手,先对算法进行改进,比如在做大数据时, 可以考虑数据的压缩存储。

多线程的好处是可以有效防止程序假死,看你怎么去运用。好多winform的程序是不允许跨线程访问的,要进行设置才行,但这样带来的负面就是安全问题,程序有可能会出现一些莫名的异常。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问