mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-08-07 08:56:02 +02:00
LazDebuggerFp: slightly faster watch eval.
git-svn-id: trunk@61517 -
This commit is contained in:
parent
96ba76e670
commit
3ed45630a0
@ -1518,15 +1518,24 @@ var
|
|||||||
WatchValue: TWatchValue;
|
WatchValue: TWatchValue;
|
||||||
AVal: String;
|
AVal: String;
|
||||||
AType: TDBGType;
|
AType: TDBGType;
|
||||||
|
t: QWord;
|
||||||
|
i: Integer;
|
||||||
begin
|
begin
|
||||||
FWatchAsyncQueued := False;
|
FWatchAsyncQueued := False;
|
||||||
if FWatchEvalList.Count = 0 then
|
t := GetTickCount64;
|
||||||
exit;
|
i := 0;
|
||||||
WatchValue := TWatchValue(FWatchEvalList[0]);
|
repeat
|
||||||
FWatchEvalList.Delete(0);
|
if FWatchEvalList.Count = 0 then
|
||||||
WatchValue.RemoveFreeNotification(@DoWatchFreed);
|
exit;
|
||||||
|
WatchValue := TWatchValue(FWatchEvalList[0]);
|
||||||
|
FWatchEvalList.Delete(0);
|
||||||
|
WatchValue.RemoveFreeNotification(@DoWatchFreed);
|
||||||
|
|
||||||
EvaluateExpression(WatchValue, WatchValue.Expression, AVal, AType);
|
EvaluateExpression(WatchValue, WatchValue.Expression, AVal, AType);
|
||||||
|
inc(i);
|
||||||
|
{$PUSH}{$Q-}
|
||||||
|
until (GetTickCount64 - t > 60) or (i > 30);
|
||||||
|
{$POP}
|
||||||
|
|
||||||
if (not FWatchAsyncQueued) and (FWatchEvalList.Count > 0) then
|
if (not FWatchAsyncQueued) and (FWatchEvalList.Count > 0) then
|
||||||
begin
|
begin
|
||||||
|
Loading…
Reference in New Issue
Block a user