gem5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Private Attributes | List of all members
EventQueue::ScopedRelease Class Reference

Temporarily release the event queue service lock. More...

#include <eventq.hh>

Public Member Functions

 ScopedRelease (EventQueue *_eq)
 
 ~ScopedRelease ()
 

Private Attributes

EventQueueeq
 

Detailed Description

Temporarily release the event queue service lock.

There are cases where it is desirable to temporarily release the event queue lock to prevent deadlocks. For example, when waiting on the global barrier, we need to release the lock to prevent deadlocks from happening when another thread tries to temporarily take over the event queue waiting on the barrier.

Definition at line 578 of file eventq.hh.

Constructor & Destructor Documentation

EventQueue::ScopedRelease::ScopedRelease ( EventQueue _eq)
inline

Definition at line 581 of file eventq.hh.

References eq, and EventQueue::unlock().

EventQueue::ScopedRelease::~ScopedRelease ( )
inline

Definition at line 587 of file eventq.hh.

References eq, and EventQueue::lock().

Member Data Documentation

EventQueue& EventQueue::ScopedRelease::eq
private

Definition at line 593 of file eventq.hh.

Referenced by ScopedRelease(), and ~ScopedRelease().


The documentation for this class was generated from the following file:

Generated on Fri Jun 9 2017 13:04:10 for gem5 by doxygen 1.8.6