reuk
83e5264c86
Formatting: Remove double-dots from comments and other strings
2025-11-18 15:47:42 +00:00
reuk
90f37e27ea
Windows: Fix DLL build
...
There were a few "ambiguous operator new/delete" errors that were due to
inheriting from a private base class that used the leak detector. These
errors are resolved by adding the leak detector to the derived classes.
JUCE_API was missing from a few useful types, notably the ARA hosting
types.
2024-10-22 13:24:46 +01:00
reuk
c6110c09b5
Timer: Warn if the TimerThread outlives the ScopedJuceIniitaliser_GUI
2024-10-21 21:54:30 +01:00
reuk
80ac9a78a0
Singleton: Add new macros to simplify singleton creation
...
The INLINE macros allow singletons to be declared and defined in one
line, without requiring a separate JUCE_IMPLEMENT_SINGLETON statement.
2024-10-16 10:36:52 +01:00
Anthony Nicholls
6c2d149ef3
Versioning: Add the JUCE version number to any internally created threads
2024-09-26 08:10:56 +00:00
Anthony Nicholls
c4d5ffa7ab
ListenerList: Add a thread safe ListenerList type
2024-06-07 20:25:39 +01:00
Anthony Nicholls
98acf79859
Timer: Prevent assertion from the Shutdown detector
2024-05-30 18:33:03 +01:00
Anthony Nicholls
9b44fa750b
Timer: Stop the timer thread on shutdown to prevent a potential hang on windows
...
This commit reverts commit: 9e9da250 as it introduced a regression.
On windows when exit is called on a dll it forcibly kills any threads
still running before destroying any static objects. This means if a
Timer object is static the timer thread will be killed. Later when the
static object is destroyed it will wait for the thread to exit, which
because the OS forcibly killed it will never come true.
2024-05-30 18:33:03 +01:00
Anthony Nicholls
9e9da250eb
Timer: Ensure the timer thread is deleted before any static or global destructors run
...
In cases where there was a static or global instance of a class that
inherited from Timer, due to the order of events when a dll is unloaded
on windows, there was a risk of an infinite hang. Deleting the timer
thread before the dll is unloaded avoids this occurring.
2024-05-10 11:55:28 +01:00
Tom Poole
94d98a2b10
Update licensing information
2024-04-16 11:39:35 +01:00
Anthony Nicholls
e607b15388
Timer: Always ensure the timer thread is started
2024-04-11 10:54:05 +00:00
Anthony Nicholls
db60c1d226
Timer: Prevent memory leaks when using callAfterDelay
2024-02-02 14:01:34 +00:00
Anthony Nicholls
005040da77
TimerThread: Always wait indefinitely for the timer thread to finish
2023-12-01 10:09:09 +00:00
Anthony Nicholls
47be26deed
Timer: Replace DeletedAtShutdown with SharedResourcePointer
2023-12-01 10:09:09 +00:00
Tom Poole
6bf9bb9a2e
Add final specifiers in implementation files
2023-10-10 16:12:38 +01:00
chroma
d3cff375be
Thread: Introduce a new Thread backend
...
This is a breaking change - see BREAKING-CHANGES.txt
2022-10-18 11:49:47 +01:00
Tom Poole
dea3fe60e4
Update copyright banners
2022-04-04 12:36:32 +01:00
reuk
3fa38114d1
AsyncUpdater: Cancel updates in derived class destructors
2022-02-18 16:43:25 +00:00
reuk
4a3ea2721d
Refactoring: Use any_of(), all_of() or, none_of() instead of find_if() where possible
...
When the result of find_if() is only compared to the container's end(),
the operation can normally be expressed more concisely using any_of(),
all_of(), or none_of().
2021-10-06 16:59:06 +01:00
ed
5ae32084a7
Made the assertion in the Timer destructor slightly less strict
2020-11-13 18:16:04 +00:00
reuk
1dae941600
Timer: Add assertion to warn when destroying a timer from a background thread
2020-10-20 10:16:13 +01:00
ed
b5214a341e
Normalised lambda whitespace
2020-06-05 09:37:56 +01:00
reuk
4cf66d6522
Cleanup: Remove redundant inlines
2020-04-27 10:22:06 +01:00
Tom Poole
894e7d2bd2
Updated all license headers
2020-04-23 17:30:39 +01:00
jules
cadac817c6
Enabled some more warning flags in Xcode, and fixed the problems they caused
2019-01-11 09:52:10 +00:00
jules
5979288706
Added some macros for asserting when functions are called in an unsafe manner outside the message thread.
2018-10-16 17:39:54 +01:00
jules
dee78f29f6
Misc cleanups and modernisation
2018-05-11 12:46:30 +01:00
jules
92f16c1d39
Fixed some Timer threading issues
2017-12-07 14:59:45 +00:00
jules
f85d706131
Some minor formatting and comment fixes
2017-11-28 17:46:15 +00:00
jules
bdc5a800a6
Bit of cleanup in Timer
2017-10-17 17:23:17 +01:00
jules
eda613c6db
Moved all "namespace juce" declarations from module headers to the individual .h and .cpp source files. This makes life a lot easier for Intellisense and other IDE autocompletion tools
2017-09-08 08:59:55 +01:00
tpoole
f4046909ab
Added an OS X 10.5 compatible std::function replacement
2017-05-03 15:36:25 +01:00
hogliux
b5afccc37c
Updated file headers and the README with the JUCE 5 license
2017-04-27 14:43:04 +01:00
jules
39284e1d0f
Added static method Timer::callAfterDelay() to invoke a one-shot lambda function
2017-03-06 15:05:14 +00:00
tpoole
2e84129479
Updated the juce_audio_basics, juce_audio_devices, juce_blocks_basics, juce_core and juce_events modules to a new ISC license
2016-12-14 10:07:26 +00:00
jules
15d746cf6e
Added a safety mechanism for pathological cases where user code that repeatedly blocks in a timer callback could get the event loop stuck
2016-02-12 11:36:34 +00:00
jules
c2bd54aefc
Added some assertions to catch event-based objects being used before the message manager has been initialised
2016-02-10 12:37:06 +00:00
jules
4b4d21682e
More refactoring of Timer internals to reduce thread wake-up frequency
2015-10-28 11:22:27 +00:00
jules
0506bc6100
Tweaked Timer and TimeSliceThread to reduce the frequency of their calls to wait()
2015-10-27 11:49:06 +00:00
hogliux
c7b8e77031
Update copyright notice
2015-07-22 15:59:34 +01:00
jules
490baecdc5
tweaks to avoid user code name clashes with Timer.
2015-05-25 10:05:45 +01:00
jules
05c68c28f3
Minor layout clean-ups.
2015-01-08 17:44:24 +00:00
jules
9e36c4ecca
Added method Timer::startTimerHz
2014-11-04 11:42:03 +00:00
jules
c577b04ccc
Removed some Timer debugging code that wasn't really very useful.
2014-03-14 17:54:17 +00:00
jules
c75a7300f5
Added some 'override' modifiers to overridden methods.
2013-06-23 23:09:52 +01:00
jules
03c2801f3f
Copyright header update in all module files. juce_core modules are now ISC licensed. All other modules are GPLv2/3/AGPLv3
2013-06-13 13:17:12 +01:00
jules
a77a671f88
Workaround for mysterious timer message loss on linux.
2013-03-21 09:50:16 +00:00
jules
0ceeb573d8
Minor changes to avoid pedantic compiler warnings.
2012-12-04 21:39:15 +00:00
jules
02f5a1f876
VSTPluginFormat: internal refactoring, and some new accessor methods.
2012-10-19 09:47:28 +01:00
jules
bdd778332d
Removed some unused android code. Refactored some messaging code.
2012-03-25 20:09:57 +01:00