一个线程terminate后,好像只是free了,并没有把他变成nil。即一个线程A结束后,
执行下面:if A<>nil then showmessage('没有nil')。
于是我想重载线程的destroy
constructor TSound.destroy();
begin
self:=nil;
inherited Destroy();
end;
但还是不行,不知道为什么,请高手指教了
执行下面:if A<>nil then showmessage('没有nil')。
于是我想重载线程的destroy
constructor TSound.destroy();
begin
self:=nil;
inherited Destroy();
end;
但还是不行,不知道为什么,请高手指教了
解决方案 »
- 代码看不太懂,来请教,求分析一下
- #########Indy10.0.52的idtcpclient,idtcpserver进行通讯时候,如果网线突然断开,然后重新连接后,报10054异常,怎么屏蔽掉该
- 关于数据库的一个小小问题,请各位高手指教!
- 有同时会VB和Delphi的人吗?
- 2
- 如何取子串-----------------急急急----在线等
- 谁给我一份Devexpress Flowchart ,100分相赠
- 我用2000+D5写的ADO数据库程序,放在98下运行,它说要 ado 2。1版或更新的控件这不是自带的吗我应该怎么办?
- 请问怎么修改button的颜色和形状呢???
- 求助,delphi 5中stringgrid组件是否支持多行选择?如果能,请问怎么设置其属性阿?
- 急,如何得到Listview中第4行,第3列的值
- 如何判断"保存"按钮的visible??
对于声明:
var
Obj: TObject;
后,Obj本身只是一个指针,并不是实例本身。所以Obj.Free只是释放实例空间,而指针的指向不会改变即Obj <> nil。
只能在类的外部(而不是TSound.destroy等的内部)将Obj指向清零,即Obj := nil 或者FreeAndNil(nil)。————————————————————————————————————
宠辱不惊,看庭前花开花落,去留无意;毁誉由人,望天上云卷云舒,聚散任风。
————————————————————————————————————