M marco_hsu Unregistered / Unconfirmed GUEST, unregistred user! 2006-05-04 #1 我做了个存储数据的线程,然后在前面用FOR循环调用,头一次没有问题,第二次再调用就报内存错误了,不知该如何设计线程?》
Y yitang Unregistered / Unconfirmed GUEST, unregistred user! 2006-05-04 #2 procedure xxx.execute; var .... begin freeonterminate:=ture; .... ... ... end
M marco_hsu Unregistered / Unconfirmed GUEST, unregistred user! 2006-05-04 #5 我调用过程如下: for I := 0 to lview_KQ.Items.Count - 1do begin ThrDownData.Create(strtoint(lview_KQ.Items.SubItems[7]));//线程 Application.ProcessMessages ; end;
我调用过程如下: for I := 0 to lview_KQ.Items.Count - 1do begin ThrDownData.Create(strtoint(lview_KQ.Items.SubItems[7]));//线程 Application.ProcessMessages ; end;
K kkkchenA Unregistered / Unconfirmed GUEST, unregistred user! 2006-05-04 #6 freeonterminate:=ture; 这个的意思是当执行完以后,自动销毁自身,多次使用线程的话,你应该用freeonterminate:=False;
M marco_hsu Unregistered / Unconfirmed GUEST, unregistred user! 2006-05-04 #7 还是不行,有时报‘在异步允许时,操作不能被执行’有时就直接报内存错误,什么FFFFF一串,单独执行就没有问题,一用FOR循环就有问题
V VictorWoo Unregistered / Unconfirmed GUEST, unregistred user! 2006-06-26 #11 ThrDownData的Execute贴出来看看 上下文信息不够
C cqwty Unregistered / Unconfirmed GUEST, unregistred user! 2006-06-27 #12 for循环中执行线程后面加一句sleep(100)看看效果,估计不会出错了哦!不过效率就非常低了,哈哈!