Changeset 150 for MicroThreading/UMicroThreading.pas
- Timestamp:
- Jan 26, 2011, 7:58:27 PM (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
MicroThreading/UMicroThreading.pas
r149 r150 275 275 mov eax, StaticMicroThread 276 276 mov edx, [eax].TMicroThread.FStackPointer 277 mov ecx, esp 277 278 mov esp, edx 278 279 push ebp // remember bp on micro thread stack for read back 280 push ecx 279 281 mov edx, [eax].TMicroThread.FBasePointer 280 282 mov ebp, edx … … 282 284 StaticMicroThread.Execute; 283 285 asm 286 pop edx 284 287 pop ebp 288 mov esp, edx 285 289 end; 286 290 //FSelected.Method(FSelected); 287 StaticManager := FCurrentMicroThread.FManager;291 (* StaticManager := FCurrentMicroThread.FManager; 288 292 asm 289 293 // Restore FScheduler stack … … 294 298 mov ebp, edx 295 299 end; 300 *) 296 301 FCurrentMicroThread.FManager := nil; 297 302 FCurrentMicroThread.FExecutionEndTime := CurrentTime; … … 561 566 try 562 567 FThreadPoolLock.Acquire; 568 FThreadPool.OwnsObjects := False; 563 569 FThreadPool.Delete(FThreadPool.IndexOf(Sender)); 570 FThreadPool.OwnsObjects := True; 564 571 finally 565 572 FThreadPoolLock.Release;
Note:
See TracChangeset
for help on using the changeset viewer.