在一个按钮事件里同事创建两个以上的线程,就很容易出错。 线程里还得加很多临界(有点影响效率)。 线程里动态创建了idhttp, 调试时都是刚进入, 创建idhttp的时候就出错, 得加临界才让过。
如
procedure TForm1.Button1Click(Sender: TObject);
var
id:dword;
begin
CreateThread(nil,0,@xc1,nil,0,ID);
sleep(1000); //这里试过间隔多长都没用。
CreateThread(nil,0,@xc1,nil,0,ID);
end;
在另一个按钮事件里, 设置为点击一次创建一个, 试过快速点击10个, 也不会出错。(最后用timer组件定时创建线程,也不会出错,可以解决上面的问题)procedure TForm1.Button1Click(Sender: TObject);
var
id:dword;
begin
CreateThread(nil,0,@xc1,nil,0,ID);
end;
分数给的有点低, 因为用第二种,可以解决自己的问题, 所以只想弄个明白。 因为那该死的困恼我好久, 害我做出的多线程程序, 很少能坚挺半小时。 刚入门只先写些小程序玩玩的。
如
procedure TForm1.Button1Click(Sender: TObject);
var
id:dword;
begin
CreateThread(nil,0,@xc1,nil,0,ID);
sleep(1000); //这里试过间隔多长都没用。
CreateThread(nil,0,@xc1,nil,0,ID);
end;
在另一个按钮事件里, 设置为点击一次创建一个, 试过快速点击10个, 也不会出错。(最后用timer组件定时创建线程,也不会出错,可以解决上面的问题)procedure TForm1.Button1Click(Sender: TObject);
var
id:dword;
begin
CreateThread(nil,0,@xc1,nil,0,ID);
end;
分数给的有点低, 因为用第二种,可以解决自己的问题, 所以只想弄个明白。 因为那该死的困恼我好久, 害我做出的多线程程序, 很少能坚挺半小时。 刚入门只先写些小程序玩玩的。
解决方案 »
- 简单的sql 问题?请赐教
- 如何在DELPHI中调用VB写的动态连接库(能否详细点,最好有实例),急求,在线等!!
- mdi窗體設計中﹐怎么一次只能打開一個子窗口(formchild.showmodal 報錯的)
- 求助(控件)
- 大家讨论一个关于一个医疗系统的数据库及程序一些问题
- Dp6从入门到精通里的一段例子代码不是很明白
- 关于SQL SERVER2000数据恢复的问题,请大虾指点
- TreeView读取节点个数问题
- 请问如何在数据库里表示下列树性结构并在DXDBTREEVIEW里显示出来???
- 我想找一个类似OICQ/GICQ...的程序...
- 通过一个按钮点击 让一个PopupMenu出现在该按钮的顶部 PopupMenu.Popup,如何定位?
- 请问有没有其它树形列表的控件(除了TVirtualStringTree)
理解了多线程以后,再慢慢过度到API上