gem5  v22.1.0.0
Public Member Functions | Private Attributes | List of all members
gem5::EventQueue::ScopedRelease Class Reference

#include <eventq.hh>

Public Member Functions

 ScopedRelease (EventQueue *_eq)
 Temporarily release the event queue service lock. More...
 ~ScopedRelease ()

Private Attributes


Detailed Description

Definition at line 716 of file eventq.hh.

Constructor & Destructor Documentation

◆ ScopedRelease()

gem5::EventQueue::ScopedRelease::ScopedRelease ( EventQueue _eq)

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.

@group api_eventq

Definition at line 730 of file eventq.hh.

References eq, and gem5::EventQueue::unlock().

◆ ~ScopedRelease()

gem5::EventQueue::ScopedRelease::~ScopedRelease ( )

Definition at line 736 of file eventq.hh.

References eq, and gem5::EventQueue::lock().

Member Data Documentation

◆ eq

EventQueue& gem5::EventQueue::ScopedRelease::eq

Definition at line 742 of file eventq.hh.

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

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

Generated on Wed Dec 21 2022 10:23:29 for gem5 by doxygen 1.9.1