mirror of
https://github.com/Open-Cascade-SAS/OCCT.git
synced 2026-05-10 09:30:48 +08:00
Refactored Standard_ErrorHandler to use thread_local storage for the error handler stack instead of a global list protected by mutex. This eliminates locking overhead entirely since each thread only accesses its own error handlers. Changes: - Replaced global mutex-protected stack with thread_local Top pointer - Simplified FindHandler() to directly return the thread-local Top - Removed Catches() and LastCaughtError() methods (no longer needed) - Added Raise() method for re-throwing caught exceptions - Removed obsolete member variables: myStatus, myThread - Deleted unused headers: Standard_HandlerStatus.hxx, Standard_JmpBuf.hxx, Standard_PErrorHandler.hxx - Updated OCC_CATCH_SIGNALS macro to use new Raise() method