src/hotspot/share/gc/z/zFuture.inline.hpp
changeset 58815 a4cdca87152b
parent 53582 881c5fbeb849
equal deleted inserted replaced
58814:bfb419c66ae9 58815:a4cdca87152b
    27 #include "gc/z/zFuture.hpp"
    27 #include "gc/z/zFuture.hpp"
    28 #include "runtime/semaphore.inline.hpp"
    28 #include "runtime/semaphore.inline.hpp"
    29 #include "runtime/thread.hpp"
    29 #include "runtime/thread.hpp"
    30 
    30 
    31 template <typename T>
    31 template <typename T>
       
    32 inline ZFuture<T>::ZFuture() :
       
    33     _value() {}
       
    34 
       
    35 template <typename T>
    32 inline void ZFuture<T>::set(T value) {
    36 inline void ZFuture<T>::set(T value) {
    33   // Set value
    37   // Set value
    34   _value = value;
    38   _value = value;
    35 
    39 
    36   // Notify waiter
    40   // Notify waiter
    37   _sema.signal();
    41   _sema.signal();
       
    42 }
       
    43 
       
    44 template <typename T>
       
    45 inline T ZFuture<T>::peek() {
       
    46   return _value;
    38 }
    47 }
    39 
    48 
    40 template <typename T>
    49 template <typename T>
    41 inline T ZFuture<T>::get() {
    50 inline T ZFuture<T>::get() {
    42   // Wait for notification
    51   // Wait for notification