diff --git a/modules/juce_audio_devices/midi_io/juce_MidiDevices.cpp b/modules/juce_audio_devices/midi_io/juce_MidiDevices.cpp index b7b0e35078..23b02c6541 100644 --- a/modules/juce_audio_devices/midi_io/juce_MidiDevices.cpp +++ b/modules/juce_audio_devices/midi_io/juce_MidiDevices.cpp @@ -49,7 +49,7 @@ void MidiInputCallback::handlePartialSysexMessage ([[maybe_unused]] MidiInput* s //============================================================================== MidiOutput::MidiOutput (const String& deviceName, const String& deviceIdentifier) - : Thread ("midi out"), deviceInfo (deviceName, deviceIdentifier) + : Thread (SystemStats::getJUCEVersion() + ": midi out"), deviceInfo (deviceName, deviceIdentifier) { } diff --git a/modules/juce_audio_devices/native/juce_ALSA_linux.cpp b/modules/juce_audio_devices/native/juce_ALSA_linux.cpp index 2f6e7d4941..7802df63bc 100644 --- a/modules/juce_audio_devices/native/juce_ALSA_linux.cpp +++ b/modules/juce_audio_devices/native/juce_ALSA_linux.cpp @@ -497,7 +497,7 @@ class ALSAThread final : public Thread { public: ALSAThread (const String& inputDeviceID, const String& outputDeviceID) - : Thread ("JUCE ALSA"), + : Thread (SystemStats::getJUCEVersion() + ": ALSA"), inputId (inputDeviceID), outputId (outputDeviceID) { diff --git a/modules/juce_audio_devices/native/juce_Audio_android.cpp b/modules/juce_audio_devices/native/juce_Audio_android.cpp index 6dc76258b6..4f9a41db96 100644 --- a/modules/juce_audio_devices/native/juce_Audio_android.cpp +++ b/modules/juce_audio_devices/native/juce_Audio_android.cpp @@ -84,7 +84,7 @@ public: //============================================================================== AndroidAudioIODevice (const String& deviceName) : AudioIODevice (deviceName, javaAudioTypeName), - Thread ("audio"), + Thread (SystemStats::getJUCEVersion() + ": audio"), minBufferSizeOut (0), minBufferSizeIn (0), callback (nullptr), sampleRate (0), numClientInputChannels (0), numDeviceInputChannels (0), numDeviceInputChannelsAvailable (2), numClientOutputChannels (0), numDeviceOutputChannels (0), diff --git a/modules/juce_audio_devices/native/juce_DirectSound_windows.cpp b/modules/juce_audio_devices/native/juce_DirectSound_windows.cpp index 28f88e55f6..e1a4083861 100644 --- a/modules/juce_audio_devices/native/juce_DirectSound_windows.cpp +++ b/modules/juce_audio_devices/native/juce_DirectSound_windows.cpp @@ -759,7 +759,7 @@ public: const int outputDeviceIndex_, const int inputDeviceIndex_) : AudioIODevice (deviceName, "DirectSound"), - Thread ("JUCE DSound"), + Thread (SystemStats::getJUCEVersion() + ": DSound"), outputDeviceIndex (outputDeviceIndex_), inputDeviceIndex (inputDeviceIndex_) { diff --git a/modules/juce_audio_devices/native/juce_Midi_windows.cpp b/modules/juce_audio_devices/native/juce_Midi_windows.cpp index 438b6b7ef8..6a1caba638 100644 --- a/modules/juce_audio_devices/native/juce_Midi_windows.cpp +++ b/modules/juce_audio_devices/native/juce_Midi_windows.cpp @@ -1029,7 +1029,7 @@ private: EventRegistrationToken& added, EventRegistrationToken& removed, EventRegistrationToken& updated) - : Thread ("WinRT Device Enumeration Thread"), handler (h), watcher (w), + : Thread (SystemStats::getJUCEVersion() + ": WinRT Device Enumeration Thread"), handler (h), watcher (w), deviceAddedToken (added), deviceRemovedToken (removed), deviceUpdatedToken (updated) {} diff --git a/modules/juce_audio_devices/native/juce_WASAPI_windows.cpp b/modules/juce_audio_devices/native/juce_WASAPI_windows.cpp index c34fe9d966..a7411f0c1b 100644 --- a/modules/juce_audio_devices/native/juce_WASAPI_windows.cpp +++ b/modules/juce_audio_devices/native/juce_WASAPI_windows.cpp @@ -1205,7 +1205,7 @@ public: const String& inputDeviceID, WASAPIDeviceMode mode) : AudioIODevice (deviceName, typeNameIn), - Thread ("JUCE WASAPI"), + Thread (SystemStats::getJUCEVersion() + ": WASAPI"), outputDeviceId (outputDeviceID), inputDeviceId (inputDeviceID), deviceMode (mode) diff --git a/modules/juce_audio_plugin_client/detail/juce_LinuxMessageThread.h b/modules/juce_audio_plugin_client/detail/juce_LinuxMessageThread.h index 4f9a4a3466..14231f7d15 100644 --- a/modules/juce_audio_plugin_client/detail/juce_LinuxMessageThread.h +++ b/modules/juce_audio_plugin_client/detail/juce_LinuxMessageThread.h @@ -43,7 +43,7 @@ bool dispatchNextMessageOnSystemQueue (bool returnIfNoPendingMessages); class MessageThread : public Thread { public: - MessageThread() : Thread ("JUCE Plugin Message Thread") + MessageThread() : Thread (SystemStats::getJUCEVersion() + ": Plugin Message Thread") { start(); } diff --git a/modules/juce_audio_utils/gui/juce_AudioThumbnailCache.cpp b/modules/juce_audio_utils/gui/juce_AudioThumbnailCache.cpp index 7a785f5f04..08a04b24e4 100644 --- a/modules/juce_audio_utils/gui/juce_AudioThumbnailCache.cpp +++ b/modules/juce_audio_utils/gui/juce_AudioThumbnailCache.cpp @@ -69,7 +69,7 @@ private: //============================================================================== AudioThumbnailCache::AudioThumbnailCache (const int maxNumThumbs) - : thread ("thumb cache"), + : thread (SystemStats::getJUCEVersion() + ": thumb cache"), maxNumThumbsToStore (maxNumThumbs) { jassert (maxNumThumbsToStore > 0); diff --git a/modules/juce_audio_utils/native/juce_BluetoothMidiDevicePairingDialogue_android.cpp b/modules/juce_audio_utils/native/juce_BluetoothMidiDevicePairingDialogue_android.cpp index efde4b77f8..5b6398cb8a 100644 --- a/modules/juce_audio_utils/native/juce_BluetoothMidiDevicePairingDialogue_android.cpp +++ b/modules/juce_audio_utils/native/juce_BluetoothMidiDevicePairingDialogue_android.cpp @@ -316,7 +316,7 @@ private: { PairDeviceThread (const String& bluetoothAddressOfDeviceToPair, AndroidBluetoothMidiDevicesListBox& ownerListBox) - : Thread ("JUCE Bluetooth MIDI Device Pairing Thread"), + : Thread (SystemStats::getJUCEVersion() + ": Bluetooth MIDI Device Pairing Thread"), bluetoothAddress (bluetoothAddressOfDeviceToPair), owner (&ownerListBox) { diff --git a/modules/juce_core/network/juce_NamedPipe.cpp b/modules/juce_core/network/juce_NamedPipe.cpp index 3934723b97..a077914dd9 100644 --- a/modules/juce_core/network/juce_NamedPipe.cpp +++ b/modules/juce_core/network/juce_NamedPipe.cpp @@ -259,7 +259,7 @@ private: { ReceiverThread (const String& pName, bool shouldCreatePipe, WaitableEvent& completed) - : NamedPipeThread ("NamePipeSender", pName, shouldCreatePipe, completed) + : NamedPipeThread ("NamePipeReceiver", pName, shouldCreatePipe, completed) {} ~ReceiverThread() override diff --git a/modules/juce_core/network/juce_URL.cpp b/modules/juce_core/network/juce_URL.cpp index cd7275c852..26b8a26b3b 100644 --- a/modules/juce_core/network/juce_URL.cpp +++ b/modules/juce_core/network/juce_URL.cpp @@ -42,7 +42,7 @@ struct FallbackDownloadTask final : public URL::DownloadTask, size_t bufferSizeToUse, std::unique_ptr streamToUse, URL::DownloadTask::Listener* listenerToUse) - : Thread ("DownloadTask thread"), + : Thread (SystemStats::getJUCEVersion() + ": DownloadTask thread"), fileStream (std::move (outputStreamToUse)), stream (std::move (streamToUse)), bufferSize (bufferSizeToUse), diff --git a/modules/juce_core/threads/juce_Thread.cpp b/modules/juce_core/threads/juce_Thread.cpp index 974f1c7385..a36b96ce6d 100644 --- a/modules/juce_core/threads/juce_Thread.cpp +++ b/modules/juce_core/threads/juce_Thread.cpp @@ -310,7 +310,7 @@ void Thread::notify() const //============================================================================== struct LambdaThread final : public Thread { - LambdaThread (std::function&& f) : Thread ("anonymous"), fn (std::move (f)) {} + LambdaThread (std::function&& f) : Thread (SystemStats::getJUCEVersion() + ": anonymous"), fn (std::move (f)) {} void run() override { @@ -496,7 +496,7 @@ class ThreadLocalValueUnitTest final : public UnitTest, public: ThreadLocalValueUnitTest() : UnitTest ("ThreadLocalValue", UnitTestCategories::threads), - Thread ("ThreadLocalValue Thread") + Thread (SystemStats::getJUCEVersion() + ": ThreadLocalValue Thread") {} void runTest() override diff --git a/modules/juce_dsp/frequency/juce_Convolution.cpp b/modules/juce_dsp/frequency/juce_Convolution.cpp index a7ce4119ec..1394b28ae6 100644 --- a/modules/juce_dsp/frequency/juce_Convolution.cpp +++ b/modules/juce_dsp/frequency/juce_Convolution.cpp @@ -83,7 +83,7 @@ class BackgroundMessageQueue : private Thread { public: explicit BackgroundMessageQueue (int entries) - : Thread ("Convolution background loader"), queue (entries) + : Thread (SystemStats::getJUCEVersion() + ": Convolution background loader"), queue (entries) {} using IncomingCommand = FixedSizeFunction<400, void()>; diff --git a/modules/juce_events/interprocess/juce_ConnectedChildProcess.cpp b/modules/juce_events/interprocess/juce_ConnectedChildProcess.cpp index aabbb261fc..a322b739e4 100644 --- a/modules/juce_events/interprocess/juce_ConnectedChildProcess.cpp +++ b/modules/juce_events/interprocess/juce_ConnectedChildProcess.cpp @@ -58,7 +58,7 @@ static String getCommandLinePrefix (const String& commandLineUniqueID) struct ChildProcessPingThread : public Thread, private AsyncUpdater { - ChildProcessPingThread (int timeout) : Thread ("IPC ping"), timeoutMs (timeout) + ChildProcessPingThread (int timeout) : Thread (SystemStats::getJUCEVersion() + ": IPC ping"), timeoutMs (timeout) { pingReceived(); } diff --git a/modules/juce_events/interprocess/juce_InterprocessConnection.cpp b/modules/juce_events/interprocess/juce_InterprocessConnection.cpp index 74d145a42c..ce3da25412 100644 --- a/modules/juce_events/interprocess/juce_InterprocessConnection.cpp +++ b/modules/juce_events/interprocess/juce_InterprocessConnection.cpp @@ -37,7 +37,7 @@ namespace juce struct InterprocessConnection::ConnectionThread final : public Thread { - ConnectionThread (InterprocessConnection& c) : Thread ("JUCE IPC"), owner (c) {} + ConnectionThread (InterprocessConnection& c) : Thread (SystemStats::getJUCEVersion() + ": IPC"), owner (c) {} void run() override { owner.runThread(); } InterprocessConnection& owner; diff --git a/modules/juce_events/interprocess/juce_InterprocessConnectionServer.cpp b/modules/juce_events/interprocess/juce_InterprocessConnectionServer.cpp index 29cc3a99a9..5f47dd3f58 100644 --- a/modules/juce_events/interprocess/juce_InterprocessConnectionServer.cpp +++ b/modules/juce_events/interprocess/juce_InterprocessConnectionServer.cpp @@ -35,7 +35,7 @@ namespace juce { -InterprocessConnectionServer::InterprocessConnectionServer() : Thread ("JUCE IPC server") +InterprocessConnectionServer::InterprocessConnectionServer() : Thread (SystemStats::getJUCEVersion() + ": IPC server") { } diff --git a/modules/juce_events/interprocess/juce_NetworkServiceDiscovery.cpp b/modules/juce_events/interprocess/juce_NetworkServiceDiscovery.cpp index 95da7622e6..4ab805b912 100644 --- a/modules/juce_events/interprocess/juce_NetworkServiceDiscovery.cpp +++ b/modules/juce_events/interprocess/juce_NetworkServiceDiscovery.cpp @@ -44,7 +44,7 @@ NetworkServiceDiscovery::Advertiser::Advertiser (const String& serviceTypeUID, const String& serviceDescription, int broadcastPortToUse, int connectionPort, RelativeTime minTimeBetweenBroadcasts) - : Thread ("Discovery_broadcast"), + : Thread (SystemStats::getJUCEVersion() + ": Discovery_broadcast"), message (serviceTypeUID), broadcastPort (broadcastPortToUse), minInterval (minTimeBetweenBroadcasts) { @@ -97,7 +97,7 @@ void NetworkServiceDiscovery::Advertiser::sendBroadcast() //============================================================================== NetworkServiceDiscovery::AvailableServiceList::AvailableServiceList (const String& serviceType, int broadcastPort) - : Thread ("Discovery_listen"), serviceTypeUID (serviceType) + : Thread (SystemStats::getJUCEVersion() + ": Discovery_listen"), serviceTypeUID (serviceType) { #if JUCE_ANDROID acquireMulticastLock(); diff --git a/modules/juce_events/messages/juce_MessageManager.cpp b/modules/juce_events/messages/juce_MessageManager.cpp index 6e94ee803a..68b5f68716 100644 --- a/modules/juce_events/messages/juce_MessageManager.cpp +++ b/modules/juce_events/messages/juce_MessageManager.cpp @@ -41,7 +41,7 @@ MessageManager::MessageManager() noexcept JUCE_VERSION_ID if (JUCEApplicationBase::isStandaloneApp()) - Thread::setCurrentThreadName ("JUCE Message Thread"); + Thread::setCurrentThreadName (SystemStats::getJUCEVersion() + ": Message Thread"); } MessageManager::~MessageManager() noexcept diff --git a/modules/juce_events/timers/juce_Timer.cpp b/modules/juce_events/timers/juce_Timer.cpp index 1557dbe18f..e8010eeee7 100644 --- a/modules/juce_events/timers/juce_Timer.cpp +++ b/modules/juce_events/timers/juce_Timer.cpp @@ -89,7 +89,7 @@ public: using LockType = CriticalSection; TimerThread() - : Thread ("JUCE Timer") + : Thread (SystemStats::getJUCEVersion() + ": Timer") { timers.reserve (32); ShutdownDetector::addListener (this); diff --git a/modules/juce_gui_basics/filebrowser/juce_FileBrowserComponent.cpp b/modules/juce_gui_basics/filebrowser/juce_FileBrowserComponent.cpp index 62fb96c31e..40d2a143cd 100644 --- a/modules/juce_gui_basics/filebrowser/juce_FileBrowserComponent.cpp +++ b/modules/juce_gui_basics/filebrowser/juce_FileBrowserComponent.cpp @@ -45,7 +45,7 @@ FileBrowserComponent::FileBrowserComponent (int flags_, previewComp (previewComp_), currentPathBox ("path"), fileLabel ("f", TRANS ("file:")), - thread ("JUCE FileBrowser"), + thread (SystemStats::getJUCEVersion() + ": FileBrowser"), wasProcessActive (true) { // You need to specify one or other of the open/save flags.. diff --git a/modules/juce_gui_basics/native/juce_FileChooser_windows.cpp b/modules/juce_gui_basics/native/juce_FileChooser_windows.cpp index 0801b061d3..36e7e2b2c2 100644 --- a/modules/juce_gui_basics/native/juce_FileChooser_windows.cpp +++ b/modules/juce_gui_basics/native/juce_FileChooser_windows.cpp @@ -49,7 +49,7 @@ public: Win32NativeFileChooser (Component* parent, int flags, FilePreviewComponent* previewComp, const File& startingFile, const String& titleToUse, const String& filtersToUse) - : Thread ("Native Win32 FileChooser"), + : Thread (SystemStats::getJUCEVersion() + ": Native Win32 FileChooser"), owner (parent), title (titleToUse), filtersString (filtersToUse.replaceCharacter (',', ';')), diff --git a/modules/juce_gui_basics/native/juce_VBlank_windows.cpp b/modules/juce_gui_basics/native/juce_VBlank_windows.cpp index 1e21b16d86..d92288b0f3 100644 --- a/modules/juce_gui_basics/native/juce_VBlank_windows.cpp +++ b/modules/juce_gui_basics/native/juce_VBlank_windows.cpp @@ -44,7 +44,7 @@ public: VBlankThread (ComSmartPtr out, HMONITOR mon, VBlankListener& listener) - : Thread ("VBlankThread"), + : Thread (SystemStats::getJUCEVersion() + ": VBlankThread"), output (out), monitor (mon) { diff --git a/modules/juce_gui_basics/windows/juce_ThreadWithProgressWindow.cpp b/modules/juce_gui_basics/windows/juce_ThreadWithProgressWindow.cpp index cae723011d..737b0fd46e 100644 --- a/modules/juce_gui_basics/windows/juce_ThreadWithProgressWindow.cpp +++ b/modules/juce_gui_basics/windows/juce_ThreadWithProgressWindow.cpp @@ -41,7 +41,7 @@ ThreadWithProgressWindow::ThreadWithProgressWindow (const String& title, const int cancellingTimeOutMs, const String& cancelButtonText, Component* componentToCentreAround) - : Thread ("ThreadWithProgressWindow"), + : Thread (SystemStats::getJUCEVersion() + ": ThreadWithProgressWindow"), progress (0.0), timeOutMsWhenCancelling (cancellingTimeOutMs), wasCancelledByUser (false) diff --git a/modules/juce_gui_extra/native/juce_WebBrowserComponent_android.cpp b/modules/juce_gui_extra/native/juce_WebBrowserComponent_android.cpp index 562a450259..3db2b8430d 100644 --- a/modules/juce_gui_extra/native/juce_WebBrowserComponent_android.cpp +++ b/modules/juce_gui_extra/native/juce_WebBrowserComponent_android.cpp @@ -618,7 +618,7 @@ private: ConnectionThread (Platform& ownerToUse, URL& url, const StringArray& headers) - : Thread ("WebBrowserComponent::Platform::ConnectionThread"), + : Thread (SystemStats::getJUCEVersion() + ": WebBrowserComponent::Platform::ConnectionThread"), owner (ownerToUse), webInputStream (new WebInputStream (url, true)) { diff --git a/modules/juce_gui_extra/native/juce_WebBrowserComponent_linux.cpp b/modules/juce_gui_extra/native/juce_WebBrowserComponent_linux.cpp index 40b08ba8b6..81162d082d 100644 --- a/modules/juce_gui_extra/native/juce_WebBrowserComponent_linux.cpp +++ b/modules/juce_gui_extra/native/juce_WebBrowserComponent_linux.cpp @@ -1222,7 +1222,7 @@ public: Platform (WebBrowserComponent& browserIn, const WebBrowserComponent::Options& optionsIn, const StringArray& userStrings) - : Thread ("Webview"), browser (browserIn), userAgent (optionsIn.getUserAgent()) + : Thread (SystemStats::getJUCEVersion() + ": Webview"), browser (browserIn), userAgent (optionsIn.getUserAgent()) { webKitIsAvailable = WebKitSymbols::getInstance()->isWebKitAvailable(); init (InitialisationData { optionsIn.getNativeIntegrationsEnabled(),