16,748
社区成员
发帖
与我相关
我的任务
分享
while isrun^ do//isrun是一个pboolean,用来控制线程循环
begin
try
perl.Subject:=surl.Get(suri);//perl是正则表达控件,在前面create的,在线程destruct时候销毁了。
perl.RegEx:=srule;
perl.Options:=[preCaseLess];
while perl.MatchAgain do
begin
tmp.Add(perl.SubExpressions[1]);//tmp是tstrings,在循环前创建,在循环结束后销毁了。现在就是怀疑乇鹗tstrings出的问题
tmp.Add(perl.SubExpressions[2]);
end;
except
end;
sLog.Add(tmp.Strings[0] + '#' + tmp.Strings[1]);//FLog消息,详见:http://blog.itpub.net/resource/4034/LogUtils.pas
tmp.Clear;
for i:=0 to 100 do//这里只是想快速响应主窗体发送的退出线程指令
begin
Sleep(stime * 10);
if not isrun^ then
begin
logout:=True;
Break;
end;
end;
if logout then
Break;
end;