- File:
- 
      - 1 edited
 
 - 
          
  libcfa/src/concurrency/coroutine.hfa (modified) (4 diffs)
 
Legend:
- Unmodified
- Added
- Removed
- 
      libcfa/src/concurrency/coroutine.hfar5456537 rfd54fef 22 22 //----------------------------------------------------------------------------- 23 23 // Exception thrown from resume when a coroutine stack is cancelled. 24 EHM_FORALL_EXCEPTION(CoroutineCancelled, (coroutine_t &), (coroutine_t)) (24 FORALL_DATA_EXCEPTION(CoroutineCancelled, (coroutine_t &), (coroutine_t)) ( 25 25 coroutine_t * the_coroutine; 26 26 exception_t * the_exception; … … 60 60 //----------------------------------------------------------------------------- 61 61 // Public coroutine API 62 forall(T & | is_coroutine(T) | { EHM_DEFAULT_VTABLE(CoroutineCancelled, (T)); })62 forall(T & | is_coroutine(T)) 63 63 void prime(T & cor); 64 64 … … 130 130 131 131 forall(T & | is_coroutine(T)) 132 void __cfaehm_cancelled_coroutine( 133 T & cor, $coroutine * desc, EHM_DEFAULT_VTABLE(CoroutineCancelled, (T)) ); 132 void __cfaehm_cancelled_coroutine( T & cor, $coroutine * desc ); 134 133 135 134 // Resume implementation inlined for performance 136 forall(T & | is_coroutine(T) | { EHM_DEFAULT_VTABLE(CoroutineCancelled, (T)); })135 forall(T & | is_coroutine(T)) 137 136 static inline T & resume(T & cor) { 138 137 // optimization : read TLS once and reuse it … … 164 163 $ctx_switch( src, dst ); 165 164 if ( unlikely(dst->cancellation) ) { 166 __cfaehm_cancelled_coroutine( cor, dst , _default_vtable);165 __cfaehm_cancelled_coroutine( cor, dst ); 167 166 } 168 167 
  Note:
 See   TracChangeset
 for help on using the changeset viewer.
  