JUCE  v5.1.1-3-g1a0b28c73
JUCE API
DummyCriticalSection Class Reference

A class that can be used in place of a real CriticalSection object, but which doesn't perform any locking. More...

#include <juce_CriticalSection.h>

Inherited by ArrayAllocationBase< ActionListener *, DummyCriticalSection >, ArrayAllocationBase< AnimatedPosition::Listener *, DummyCriticalSection >, ArrayAllocationBase< AnimationTask *, DummyCriticalSection >, ArrayAllocationBase< ApplicationCommandInfo *, DummyCriticalSection >, ArrayAllocationBase< ApplicationCommandManagerListener *, DummyCriticalSection >, ArrayAllocationBase< AttributedString::Attribute, DummyCriticalSection >, ArrayAllocationBase< AudioChannelSet, DummyCriticalSection >, ArrayAllocationBase< AudioDeviceManager::AudioDeviceSetup *, DummyCriticalSection >, ArrayAllocationBase< AudioDeviceManager::MidiCallbackInfo, DummyCriticalSection >, ArrayAllocationBase< AudioFormat *, DummyCriticalSection >, ArrayAllocationBase< AudioIODeviceCallback *, DummyCriticalSection >, ArrayAllocationBase< AudioIODeviceType *, DummyCriticalSection >, ArrayAllocationBase< AudioIODeviceType::Listener *, DummyCriticalSection >, ArrayAllocationBase< AudioPluginFormat *, DummyCriticalSection >, ArrayAllocationBase< AudioProcessor::Bus *, DummyCriticalSection >, ArrayAllocationBase< AudioProcessor::BusProperties, DummyCriticalSection >, ArrayAllocationBase< AudioProcessorGraph::Connection *, DummyCriticalSection >, ArrayAllocationBase< AudioProcessorGraph::Node *, DummyCriticalSection >, ArrayAllocationBase< AudioProcessorListener *, DummyCriticalSection >, ArrayAllocationBase< AudioProcessorParameter *, DummyCriticalSection >, ArrayAllocationBase< AudioSource *, DummyCriticalSection >, ArrayAllocationBase< BufferingAudioReader::BufferedBlock *, DummyCriticalSection >, ArrayAllocationBase< Button::Listener *, DummyCriticalSection >, ArrayAllocationBase< CachedGlyphType *, DummyCriticalSection >, ArrayAllocationBase< CameraDevice::Listener *, DummyCriticalSection >, ArrayAllocationBase< CameraDevice::ViewerComponent *, DummyCriticalSection >, ArrayAllocationBase< ChangeListener *, DummyCriticalSection >, ArrayAllocationBase< ChannelInfo *, DummyCriticalSection >, ArrayAllocationBase< CodeDocument::Iterator *, DummyCriticalSection >, ArrayAllocationBase< CodeDocument::Listener *, DummyCriticalSection >, ArrayAllocationBase< CodeDocument::Position *, DummyCriticalSection >, ArrayAllocationBase< CodeEditorComponent::ColourScheme::TokenType, DummyCriticalSection >, ArrayAllocationBase< ColourGradient::ColourPoint, DummyCriticalSection >, ArrayAllocationBase< ComboBox *, DummyCriticalSection >, ArrayAllocationBase< ComboBox::Listener *, DummyCriticalSection >, ArrayAllocationBase< Component *, DummyCriticalSection >, ArrayAllocationBase< ComponentBuilder::TypeHandler *, DummyCriticalSection >, ArrayAllocationBase< ComponentPeer *, DummyCriticalSection >, ArrayAllocationBase< const PluginDescription *, DummyCriticalSection >, ArrayAllocationBase< const PopupMenu *, DummyCriticalSection >, ArrayAllocationBase< CoreGraphicsContext::SavedState *, DummyCriticalSection >, ArrayAllocationBase< Desktop::Displays::Display, DummyCriticalSection >, ArrayAllocationBase< DirectoryContentsList::FileInfo *, DummyCriticalSection >, ArrayAllocationBase< DrawableButton *, DummyCriticalSection >, ArrayAllocationBase< ElementType, DummyCriticalSection >, ArrayAllocationBase< File, DummyCriticalSection >, ArrayAllocationBase< FileBrowserListener *, DummyCriticalSection >, ArrayAllocationBase< FilenameComponentListener *, DummyCriticalSection >, ArrayAllocationBase< FlexItem, DummyCriticalSection >, ArrayAllocationBase< float, DummyCriticalSection >, ArrayAllocationBase< FloatType, DummyCriticalSection >, ArrayAllocationBase< FocusChangeListener *, DummyCriticalSection >, ArrayAllocationBase< HashMap::HashEntry *, DummyCriticalSection >, ArrayAllocationBase< IDType, DummyCriticalSection >, ArrayAllocationBase< IIRFilter *, DummyCriticalSection >, ArrayAllocationBase< ImagePixelData::Listener *, DummyCriticalSection >, ArrayAllocationBase< int, DummyCriticalSection >, ArrayAllocationBase< Item *, DummyCriticalSection >, ArrayAllocationBase< KeyPress, DummyCriticalSection >, ArrayAllocationBase< KeyPressMappingSet::CommandMapping *, DummyCriticalSection >, ArrayAllocationBase< KeyPressMappingSet::KeyPressTime *, DummyCriticalSection >, ArrayAllocationBase< KnownPluginList::PluginTree *, DummyCriticalSection >, ArrayAllocationBase< Label::Listener *, DummyCriticalSection >, ArrayAllocationBase< LookAndFeel::ColourSetting, DummyCriticalSection >, ArrayAllocationBase< LowLevelGraphicsPostScriptRenderer::SavedState *, DummyCriticalSection >, ArrayAllocationBase< MarkerList *, DummyCriticalSection >, ArrayAllocationBase< MarkerList::Listener *, DummyCriticalSection >, ArrayAllocationBase< MarkerList::Marker *, DummyCriticalSection >, ArrayAllocationBase< MenuBarModel::Listener *, DummyCriticalSection >, ArrayAllocationBase< MidiBuffer *, DummyCriticalSection >, ArrayAllocationBase< MidiInput *, DummyCriticalSection >, ArrayAllocationBase< MidiKeyboardStateListener *, DummyCriticalSection >, ArrayAllocationBase< MidiMessageSequence *, DummyCriticalSection >, ArrayAllocationBase< MidiMessageSequence::MidiEventHolder *, DummyCriticalSection >, ArrayAllocationBase< MouseInactivityDetector::Listener *, DummyCriticalSection >, ArrayAllocationBase< MouseListener *, DummyCriticalSection >, ArrayAllocationBase< MPEInstrument::Listener *, DummyCriticalSection >, ArrayAllocationBase< MPENote, DummyCriticalSection >, ArrayAllocationBase< MPESynthesiserVoice *, DummyCriticalSection >, ArrayAllocationBase< MPEZone, DummyCriticalSection >, ArrayAllocationBase< MPEZoneLayout::Listener *, DummyCriticalSection >, ArrayAllocationBase< NamedValueSet::NamedValue, DummyCriticalSection >, ArrayAllocationBase< OSCArgument, DummyCriticalSection >, ArrayAllocationBase< OSCBundle::Element, DummyCriticalSection >, ArrayAllocationBase< PanelHolder *, DummyCriticalSection >, ArrayAllocationBase< PluginDescription *, DummyCriticalSection >, ArrayAllocationBase< PopupMenu::Item *, DummyCriticalSection >, ArrayAllocationBase< PositionedGlyph, DummyCriticalSection >, ArrayAllocationBase< ProgressBar *, DummyCriticalSection >, ArrayAllocationBase< Range< int >, DummyCriticalSection >, ArrayAllocationBase< ReadWriteLock::ThreadRecursionCount, DummyCriticalSection >, ArrayAllocationBase< Rectangle, DummyCriticalSection >, ArrayAllocationBase< RelativePointPath::ElementBase *, DummyCriticalSection >, ArrayAllocationBase< SavedState *, DummyCriticalSection >, ArrayAllocationBase< ScrollBar::Listener *, DummyCriticalSection >, ArrayAllocationBase< size_t, DummyCriticalSection >, ArrayAllocationBase< StandalonePluginHolder::PluginInOuts, DummyCriticalSection >, ArrayAllocationBase< StateObjectType *, DummyCriticalSection >, ArrayAllocationBase< StretchableLayoutManager::ItemLayoutProperties *, DummyCriticalSection >, ArrayAllocationBase< StretchableObjectResizer::Item, DummyCriticalSection >, ArrayAllocationBase< String, DummyCriticalSection >, ArrayAllocationBase< SwatchComponent *, DummyCriticalSection >, ArrayAllocationBase< SynthesiserSound *, DummyCriticalSection >, ArrayAllocationBase< SynthesiserVoice *, DummyCriticalSection >, ArrayAllocationBase< TabbedButtonBar::TabInfo *, DummyCriticalSection >, ArrayAllocationBase< TableHeaderComponent::ColumnInfo *, DummyCriticalSection >, ArrayAllocationBase< TableHeaderComponent::Listener *, DummyCriticalSection >, ArrayAllocationBase< TextButton *, DummyCriticalSection >, ArrayAllocationBase< TextDiff::Change, DummyCriticalSection >, ArrayAllocationBase< TextEditor *, DummyCriticalSection >, ArrayAllocationBase< TextEditor::Listener *, DummyCriticalSection >, ArrayAllocationBase< TextLayout::Glyph, DummyCriticalSection >, ArrayAllocationBase< TextLayout::Line *, DummyCriticalSection >, ArrayAllocationBase< TextLayout::Run *, DummyCriticalSection >, ArrayAllocationBase< TextPropertyComponent::Listener *, DummyCriticalSection >, ArrayAllocationBase< ThreadPoolJob *, DummyCriticalSection >, ArrayAllocationBase< ThreadPoolThread *, DummyCriticalSection >, ArrayAllocationBase< ThumbData *, DummyCriticalSection >, ArrayAllocationBase< Timer *, DummyCriticalSection >, ArrayAllocationBase< TimeSliceClient *, DummyCriticalSection >, ArrayAllocationBase< ToolbarItemComponent *, DummyCriticalSection >, ArrayAllocationBase< TreeViewItem *, DummyCriticalSection >, ArrayAllocationBase< Type, DummyCriticalSection >, ArrayAllocationBase< URL::Upload *, DummyCriticalSection >, ArrayAllocationBase< Value *, DummyCriticalSection >, ArrayAllocationBase< Value::Listener *, DummyCriticalSection >, ArrayAllocationBase< ValueTree::Listener *, DummyCriticalSection >, ArrayAllocationBase< void *, DummyCriticalSection >, and ArrayAllocationBase< WeakReference< Component >, DummyCriticalSection >.

Classes

struct  ScopedLockType
 A dummy scoped-lock type to use with a dummy critical section. More...
 

Public Types

typedef ScopedLockType ScopedUnlockType
 A dummy scoped-unlocker type to use with a dummy critical section. More...
 

Public Member Functions

 DummyCriticalSection () noexcept
 
 ~DummyCriticalSection () noexcept
 
void enter () const noexcept
 
void exit () const noexcept
 
bool tryEnter () const noexcept
 

Detailed Description

A class that can be used in place of a real CriticalSection object, but which doesn't perform any locking.

This is currently used by some templated classes, and most compilers should manage to optimise it out of existence.

See also
CriticalSection, Array, OwnedArray, ReferenceCountedArray

Member Typedef Documentation

◆ ScopedUnlockType

A dummy scoped-unlocker type to use with a dummy critical section.

Constructor & Destructor Documentation

◆ DummyCriticalSection()

DummyCriticalSection::DummyCriticalSection ( )
inlinenoexcept

◆ ~DummyCriticalSection()

DummyCriticalSection::~DummyCriticalSection ( )
inlinenoexcept

Member Function Documentation

◆ enter()

void DummyCriticalSection::enter ( ) const
inlinenoexcept

◆ exit()

void DummyCriticalSection::exit ( ) const
inlinenoexcept

◆ tryEnter()

bool DummyCriticalSection::tryEnter ( ) const
inlinenoexcept

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