Kirill Gavrilov
078dfc44ae
Foundation Classes, Standard_ErrorHandler - use thread_local stack instead of global mutex lock ( #980 )
...
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
2026-01-05 17:03:00 +00:00
..
2017-12-08 16:39:26 +03:00
2012-12-07 16:29:17 +04:00
2016-02-05 11:14:37 +03:00
2021-01-20 21:27:44 +03:00
2021-01-20 21:27:44 +03:00
2021-01-20 21:27:44 +03:00
2013-01-11 15:30:11 +04:00
2012-12-21 16:39:38 +04:00
2024-11-05 17:00:06 +00:00
2020-12-25 12:34:20 +03:00
2022-11-28 00:04:06 +03:00
2019-07-19 12:23:00 +03:00
2017-11-02 17:02:45 +03:00
2018-11-02 17:06:40 +03:00
2022-11-28 00:04:06 +03:00
2023-12-04 13:37:09 +00:00
2012-12-21 16:39:38 +04:00
2024-07-14 15:19:44 +01:00
2024-07-14 15:19:44 +01:00
2012-12-21 16:39:38 +04:00
2012-12-21 16:39:38 +04:00
2013-01-11 15:30:11 +04:00
2013-01-11 15:30:11 +04:00
2013-02-08 15:16:15 +04:00
2013-02-08 15:16:15 +04:00
2016-02-12 00:04:29 +03:00
2019-11-17 17:52:38 +03:00
2015-03-26 18:10:29 +03:00
2013-01-25 16:22:41 +04:00
2022-07-07 19:26:22 +03:00
2022-07-07 19:26:22 +03:00
2012-12-28 18:50:48 +04:00
2020-08-25 09:44:15 +03:00
2012-12-07 14:12:54 +04:00
2012-12-07 14:12:54 +04:00
2012-12-07 14:12:54 +04:00
2012-12-07 14:12:54 +04:00
2012-12-07 14:12:54 +04:00
2012-12-07 14:12:54 +04:00
2012-12-07 14:12:54 +04:00
2013-03-15 12:40:54 +04:00
2024-11-05 17:00:06 +00:00
2025-02-08 09:44:51 +00:00
2015-09-24 14:17:41 +03:00
2014-04-24 16:50:19 +04:00
2015-03-26 18:10:29 +03:00
2014-10-23 16:20:42 +04:00
2014-10-23 16:20:42 +04:00
2014-05-29 15:06:48 +04:00
2015-02-19 14:58:24 +03:00
2014-09-25 15:58:06 +04:00
2014-10-09 16:02:15 +04:00
2016-02-05 11:14:37 +03:00
2016-02-05 11:14:37 +03:00
2016-02-05 11:14:37 +03:00
2016-01-28 13:02:25 +03:00
2016-12-15 16:33:12 +03:00
2015-02-05 16:14:55 +03:00
2015-02-12 12:15:29 +03:00
2015-05-28 13:45:38 +03:00
2015-07-30 12:53:50 +03:00
2016-02-05 11:14:44 +03:00
2016-02-05 11:14:45 +03:00
2016-04-08 11:42:21 +03:00
2016-11-23 13:01:46 +03:00
2020-09-12 20:42:22 +03:00
2017-06-29 14:23:03 +03:00
2018-03-26 15:32:51 +03:00
2020-05-07 21:24:46 +03:00
2019-03-18 19:46:00 +03:00
2020-12-17 21:17:43 +03:00
2020-10-03 16:06:35 +03:00
2019-06-25 19:41:23 +03:00
2019-09-24 14:15:18 +03:00
2020-09-12 20:42:22 +03:00
2020-09-04 18:14:20 +03:00
2025-12-21 10:28:25 +00:00
2020-08-07 18:49:38 +03:00
2021-10-04 19:53:12 +03:00
2022-09-13 10:57:29 +03:00