Delphi 多线程使用数组动态创建

提问:

我是新人,想问一个问题,
如何在不使用线程池的情况下,建立一个动态的线程数组来创建多个线程呢?
比如
TH:array[0..9] of Thread;
在窗体的Button中使用代码
For i:=0 to 9 do
TH[i]:=Thread.create(false);
这样就依次创建了10个线程.
但是.如果我想使用这10个线程操作Listbox中的数据.如何操作呢.
Listbox中的数据有一两千行.怎么才能让这10个线程处理Listbox内的每行数据.写入到Memo中呢?
这10个线程如果使用Create传值的话,也只能传入10个数值.也就相当于只能传入
Listbox.items.strings[i] 这里的I在循环内最多为9,也就是相当于Listbox内10行数据.


最后,明确一下我的问题:
我想使用10个线程处理listbox内的1000行数据到Memo中.
新人就20分全部家当,不要嫌少噢.希望有例子的朋友发个源码参考一下.小弟在此谢过了!

 

这个答案与我的想法一致,但是不知道对不对,或者可能还有更好的方法:

根据线程数把Listbox的item进行分组,线程create时候初始化数组,这样,一个线程处理200个items的值

来源:http://bbs.csdn.net/topics/340210192

//回忆我以前的实验,总结:代码中线程函数体只有一个,创建再多的线程都是运行一个线程函数体。函数体里的变量会被多个线程改变,。。这个有待研究.

posted @ 2015-12-09 15:47  stma  阅读(856)  评论(0)    收藏  举报