// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*- #ifndef __java_util_concurrent_Exchanger__ #define __java_util_concurrent_Exchanger__ #pragma interface #include #include class java::util::concurrent::Exchanger : public ::java::lang::Object { ::java::lang::Object * doExchange(::java::lang::Object *, jboolean, jlong); jint hashIndex(); void createSlot(jint); static jboolean tryCancel(::java::util::concurrent::Exchanger$Node *, ::java::util::concurrent::Exchanger$Slot *); static ::java::lang::Object * spinWait(::java::util::concurrent::Exchanger$Node *, ::java::util::concurrent::Exchanger$Slot *); static ::java::lang::Object * await(::java::util::concurrent::Exchanger$Node *, ::java::util::concurrent::Exchanger$Slot *); ::java::lang::Object * awaitNanos(::java::util::concurrent::Exchanger$Node *, ::java::util::concurrent::Exchanger$Slot *, jlong); ::java::lang::Object * scanOnTimeout(::java::util::concurrent::Exchanger$Node *); public: Exchanger(); virtual ::java::lang::Object * exchange(::java::lang::Object *); virtual ::java::lang::Object * exchange(::java::lang::Object *, jlong, ::java::util::concurrent::TimeUnit *); private: static jint NCPU; static const jint CAPACITY = 32; static jint FULL; static jint SPINS; static jint TIMED_SPINS; static ::java::lang::Object * CANCEL; static ::java::lang::Object * NULL_ITEM; JArray< ::java::util::concurrent::Exchanger$Slot * > * volatile __attribute__((aligned(__alignof__( ::java::lang::Object)))) arena; ::java::util::concurrent::atomic::AtomicInteger * max; public: static ::java::lang::Class class$; }; #endif // __java_util_concurrent_Exchanger__