- File:
-
- 1 edited
-
libcfa/src/concurrency/exception.cfa (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
libcfa/src/concurrency/exception.cfa
r1c01c58 rc960331 10 10 // Created On : Mon Aug 17 10:41:00 2020 11 11 // Last Modified By : Andrew Beach 12 // Last Modified On : Tue Aug 25 14:41:00 202013 // Update Count : 012 // Last Modified On : Wed Oct 28 14:34:00 2020 13 // Update Count : 1 14 14 // 15 15 16 extern "C" { 17 // use this define to make unwind.h play nice, definitely a hack 18 #define HIDE_EXPORTS 19 #include <unwind.h> 20 #undef HIDE_EXPORTS 21 } 16 #define __cforall_thread__ 22 17 23 #include "invoke.h"24 18 #include "exception.hfa" 19 25 20 #include "coroutine.hfa" 26 21 27 22 extern struct $thread * mainThread; 23 extern "C" { 24 extern void __cfactx_thrd_leave(); 25 } 28 26 29 27 // Common pattern for all the stop functions, wait until the end then act. … … 52 50 53 51 STOP_AT_END_FUNCTION(thread_cancelstop, 54 // TODO: Instead pass information to the joiner.55 abort();52 __cfactx_thrd_leave(); 53 __cabi_abort( "Resumed cancelled thread" ); 56 54 ) 57 55 … … 85 83 stop_param = (void *)0x22; 86 84 } else { 85 this_thread->self_cor.cancellation = unwind_exception; 86 87 87 stop_func = thread_cancelstop; 88 88 stop_param = this_thread;
Note:
See TracChangeset
for help on using the changeset viewer.