Browse Source

* fixed deadlock

florian 20 years ago
parent
commit
bbee26af24
1 changed files with 5 additions and 4 deletions
  1. 5 4
      tests/webtbs/tw3814.pp

+ 5 - 4
tests/webtbs/tw3814.pp

@@ -25,10 +25,10 @@ type
 
 
     MyThread = class(TThread)
     MyThread = class(TThread)
     private
     private
-        worker: Tester;
+      worker: Tester;
     public
     public
-	constructor Create(w: Tester);
-	procedure Execute; override;
+      constructor Create(w: Tester);
+	    procedure Execute; override;
     end;
     end;
 
 
 constructor MyThread.Create(w: Tester);
 constructor MyThread.Create(w: Tester);
@@ -42,7 +42,8 @@ begin
   WriteLn('Starting MyThread.Execute');
   WriteLn('Starting MyThread.Execute');
   repeat
   repeat
     // sleep(500);
     // sleep(500);
-    Synchronize(worker.count);
+    if worker.count<10 then
+      Synchronize(worker.count);
   until Terminated;
   until Terminated;
   WriteLn('Ending MyThread.Execute');
   WriteLn('Ending MyThread.Execute');
 end;
 end;