Changeset fe293bf for libcfa/src/concurrency
- Timestamp:
- Nov 6, 2023, 5:52:04 PM (14 months ago)
- Branches:
- master
- Children:
- 6b419ce
- Parents:
- 0d41b2e
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
libcfa/src/concurrency/channel.hfa
r0d41b2e rfe293bf 28 28 unlock( lock ); 29 29 park(); 30 #if defined(__ARM_ARCH)31 __atomic_thread_fence( __ATOMIC_SEQ_CST );32 #endif33 30 return sn.extra == 0p; 34 31 } … … 133 130 static inline void __cons_handoff( channel(T) & chan, T & elem ) with(chan) { 134 131 memcpy( cons`first.extra, (void *)&elem, sizeof(T) ); // do waiting consumer work 135 #if defined(__ARM_ARCH)136 __atomic_thread_fence( __ATOMIC_SEQ_CST );137 #endif138 132 wake_one( cons ); 139 133 } … … 142 136 static inline void __prods_handoff( channel(T) & chan, T & retval ) with(chan) { 143 137 memcpy( (void *)&retval, prods`first.extra, sizeof(T) ); 144 #if defined(__ARM_ARCH)145 __atomic_thread_fence( __ATOMIC_SEQ_CST );146 #endif147 138 wake_one( prods ); 148 139 }
Note: See TracChangeset
for help on using the changeset viewer.