C# 多线程问题 我有一个list<string>变量 ,其中保存了10万条数据,我现在想开10条线程读里面的数据,其中线程1读1,11,21这样数据,线程2读2,12,22这样的数据 因此类推。 希望这些线程能同时读取而不用锁住,不知道可以实现吧 如果能实现,望高手指点!如果不能实现 ,也望高手给出一个好的解决方案 谢谢! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 从你的问题出发,我建议用 string[]因为动态集合list的目的就是可以动态扩建 length但是如果你本身只是一个 容量 可控制死的 集合,比如 你就10万条数据 那么用数组更好.用索引来控制 每个线程只操作分配给自己的索引,这样的话 string[] 根本就不需要上锁.-----------------------------------------------------------------------从你的需求出发,我建议只用1个固定线程读取数据(读取之后丢入队列),但是对数据有什么操作你可以创建一个线程池来进行操作.这个线程池就负责操作上面的队列.比如1个线程读(基本无阻塞)然后10个线程对读到的数据进行操作. 如果这种情况用list的话必须得锁上了,可以考虑 10楼的方案 DataTable的Copy问题 求助:C#应用程序Form1_Load()无效问题 Visual Studio 无法执行C程序代码 c# winform中如何添加自定义的控件方法 问个数据库接口的问题 关于“强名称”的问题。。。 怎样用C#写一个弹出指定URL的网页的程序 VS2005的Data Adapter生成向导在哪里? 请问下面的方法怎么实现 请问:在c#中的int型,可以自动转换为string型吗? 高分求采购系统一个,最好自己编的,简单点没事 winfrom开发一个程序,数据集的问题
因为动态集合list的目的就是可以动态扩建 length
但是如果你本身只是一个 容量 可控制死的 集合,比如 你就10万条数据 那么用数组更好.
用索引来控制 每个线程只操作分配给自己的索引,这样的话 string[] 根本就不需要上锁.
-----------------------------------------------------------------------
从你的需求出发,我建议只用1个固定线程读取数据(读取之后丢入队列),但是对数据有什么操作你可以创建一个线程池来进行操作.这个线程池就负责操作上面的队列.比如1个线程读(基本无阻塞)
然后10个线程对读到的数据进行操作.