Changes in src/libcfa/concurrency/invoke.h [ea7d2b0:c1a9c86]
- File:
-
- 1 edited
-
src/libcfa/concurrency/invoke.h (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
-
src/libcfa/concurrency/invoke.h
rea7d2b0 rc1a9c86 14 14 // 15 15 16 #include "bits/defs.h"17 #include "bits/locks.h"16 #include <stdbool.h> 17 #include <stdint.h> 18 18 19 19 #ifdef __CFORALL__ … … 25 25 #define _INVOKE_H_ 26 26 27 #define unlikely(x) __builtin_expect(!!(x), 0) 28 #define thread_local _Thread_local 29 27 30 typedef void (*fptr_t)(); 28 31 typedef int_fast16_t __lock_size_t; 32 33 struct spinlock { 34 volatile int lock; 35 #ifdef __CFA_DEBUG__ 36 const char * prev_name; 37 void* prev_thrd; 38 #endif 39 }; 29 40 30 41 struct __thread_queue_t { … … 47 58 void push( struct __condition_stack_t &, struct __condition_criterion_t * ); 48 59 struct __condition_criterion_t * pop( struct __condition_stack_t & ); 60 61 void ?{}(spinlock & this); 62 void ^?{}(spinlock & this); 49 63 } 50 64 #endif … … 108 122 struct monitor_desc { 109 123 // spinlock to protect internal data 110 struct __spinlock_tlock;124 struct spinlock lock; 111 125 112 126 // current owner of the monitor
Note:
See TracChangeset
for help on using the changeset viewer.