线程创建好了,挂起唤醒,在挂起时编译器下运行不出错,EXE运行就会出错,300¥(300分)

  • 主题发起人 主题发起人 chenby
  • 开始时间 开始时间
C

chenby

Unregistered / Unconfirmed
GUEST, unregistred user!
1.我在程序show的时候创建线程且未唤醒:
NewThread1 := thread_bp.Create(True);
//false:会自动调用Execute(),若为True:需运行resume()来唤醒线程
2.在一个开始按纽中加唤醒线程(另外因为可能程序中会由于出错而造成线程丢掉,就判断若不存在就再创建):
if NewThread1.Suspended then
//若是处于挂起线程就唤醒
NewThread1.Resume
else
//否则重新创建线程
NewThread1 := Thread_bp.Create(false);
3.在一个暂停按钮中处理挂起线程:
NewThread1.Suspend;

问题:
就是当我在DELPHI中运行的时候按3暂停可以正常运行,
可若编译好了EXE在外面运行就会出错(而且不知道是什么错异常这样就无法跟踪了)
请各位大侠帮忙!
 
怎么可能?
你在线程里都做了什么事情?
建议:
>3.在一个暂停按钮中处理挂起线程:
> NewThread1.Suspend;
改为:
if NewThread1.Suspended=false then
NewThread1.Suspend;
 
线程丢掉?没听说过。
假如真的这样你应该
if newthread1 = nil then
create...
else
if suspended...
 
多人接受答案了。
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
后退
顶部