1
0
Fork 0
mirror of https://github.com/juce-framework/JUCE.git synced 2026-01-21 01:24:21 +00:00
Commit graph

2152 commits

Author SHA1 Message Date
reuk
48c6087faf Thread: Update macOS thread priority calculation
The Apple threading documentation [^1] says the following:

> The second argument to pthread_setschedparam is the desired policy,
  which can currently be one of SCHED_FIFO (first in, first out),
  SCHED_RR (round-robin), or SCHED_OTHER. The SCHED_OTHER policy is
  generally used for extra policies that are specific to a given
  operating system, and should thus be avoided when writing portable
  code.

This appears to differ from the policy semantics on Linux and BSD, where
FIFO and RR are both explicitly real-time policies.

Therefore, on Linux/BSD we only enable the RR policy if the requested
priority is 8 or higher. Meanwhile, on macOS, we map all thread
priorities (0 - 10) onto the RR policy with an appropriate priority.

[^1]: https://developer.apple.com/library/archive/documentation/Darwin/Conceptual/KernelProgramming/scheduler/scheduler.html
2021-12-14 22:50:09 +00:00
reuk
44404508fe Bump version number to 6.1.3 2021-12-08 15:26:08 +00:00
reuk
bf32f0dba9 Sanitizer Warnings: Bump sanitizer macro to support Xcode 11 onwards 2021-12-08 15:26:07 +00:00
reuk
d26945f476
ObjC Helpers: Ensure that all methods accept mandatory "self" and "selector" arguments 2021-12-07 19:08:11 +00:00
ed
81013b0517 Docs fix 2021-12-07 17:30:54 +00:00
ed
4c2c51eaf4 Check for nullptr comparison operator in NullCheckedInvocation::invoke() 2021-12-07 16:25:22 +00:00
ed
fcb4a8adb3 Fix NullCheckedInvocation::invoke() std::function signature to allow non-forwarding references 2021-12-06 14:27:00 +00:00
ed
fc0f6b1f2f Tidy up 2021-12-02 09:24:55 +00:00
reuk
69aa461be1
Time: Fix duplicate '-' symbols in UTC offset string 2021-11-24 16:20:37 +00:00
reuk
aa95939273
SystemStats: Set hasNeon flag correctly on M1 machines 2021-11-24 16:20:35 +00:00
reuk
81fa777ff7
ObjC Helpers: Automatically derive appropriate signature for function 2021-11-24 11:51:11 +00:00
reuk
4196b5e45b
macOS: Silence deprecation warnings on Monterey 2021-11-01 10:04:35 +00:00
reuk
17b8708852
WebBrowserComponent: Avoid leaking browsers on macOS 2021-10-26 16:52:16 +01:00
reuk
317083d409
Variant: Improve documentation for equals() 2021-10-25 09:51:21 +01:00
reuk
6244fc293f
CharacterFunctions: Avoid UB when parsing hex strings 2021-10-25 09:51:20 +01:00
ed
aabd65b0fd Text: Fix some build issues when JUCE_STRING_UTF_TYPE != 8 2021-10-14 16:52:31 +01:00
reuk
d5e9793cb1
Reservoir: Fix bug where incorrect buffer region could be read in some cases 2021-10-14 12:40:46 +01:00
reuk
d36c8b4c55
NamedPipe: Avoid early exits from writes on unavailable pipes 2021-10-14 12:40:25 +01:00
ed
7d1918b385 macOS/iOS: Replace compile-time deployment target checks with runtime checks using the available keyword 2021-10-13 15:06:18 +01:00
ed
e612481771 HeapBlock: Relax size constructor constraints to allow enums 2021-10-13 15:06:18 +01:00
ed
d9eb2022ed POSIX: Fix overflow when setting hi-res timer thread period on macOS/iOS 2021-10-13 15:06:18 +01:00
reuk
f5f834f758
CompilerWarnings: Update minimum supported clang version for JUCE_BEGIN_NO_SANITIZE
Clang versions 5 to 8 inclusive seem to struggle to compile JUCE when
JUCE_BEGIN_NO_SANITIZE is used. This is unexpected, as simpler programs
using the same macro definitions compile correctly on clang 5.
2021-10-07 14:31:27 +01:00
reuk
4b57909fb0
Singleton: Fix thread sanitizer warning about race on "instance" data member 2021-10-06 16:59:07 +01:00
ed
6da59e87a3 Fix float_Pi deprecation warning typo 2021-10-04 10:01:07 +01:00
ed
3d282c1078 Desktop: Deprecate isOSXDarkModeActive() and add isDarkModeActive() for other platforms 2021-09-29 17:40:58 +01:00
ed
b9542ccc4c Update code to use C++14 [[deprecated]] attribute
This commit removes the various compiler-specific JUCE_DEPRECATED macros and replaces them with C++14's deprecated attribute. It also removes the JUCE_CATCH_DEPRECATED_CODE_MISUSE flag as we can rely on the override specifier catching usage of these old virtual methods, and tidies up the DOXYGEN preprocessor checks as they were inconsistent across the codebase.
2021-09-29 16:14:00 +01:00
ed
a435026b24 macOS: Use available keyword instead of preprocessor version checks where possible 2021-09-29 16:13:48 +01:00
ed
1658d3f9ab Obj-C++: Remove JUCE_OBJC_HAS_AVAILABLE_FEATURE define 2021-09-29 16:13:09 +01:00
Tom Poole
2c8ec9dae1 Fix a documentation typo 2021-09-29 15:39:37 +01:00
ed
2c02ba9723 macOS: Fix compile error when using C++20 language standard 2021-09-29 11:45:43 +01:00
reuk
afa6465098
UB Sanitizer: Avoid warnings in third party code, with clang 2021-09-28 11:31:50 +01:00
reuk
f87582a013
URL: Allow specifying shared container for downloads on iOS 2021-09-28 11:31:47 +01:00
reuk
e02a09da0c
HeapBlock: Disable size-based constructor for non-integral arguments 2021-09-27 15:44:48 +01:00
reuk
930a3299f2
Reservoir: Factor out reservoir management code 2021-09-27 13:20:47 +01:00
reuk
b0bd1c4f63
SingleThreadedAbstractFifo: Move into juce_core 2021-09-27 13:15:39 +01:00
reuk
b6ab931bcf
File: Add helper function to locate shared containers on macOS and iOS
File::getContainerForSecurityApplicationGroupIdentifier will return the
path to a container which is shared between all apps using the specified
app group ID. This might be useful if you need to share resources
between a standalone app and an AUv3 plugin, for example.
2021-09-23 10:28:48 +01:00
reuk
d738f0274e
File: Fix quoting in openDocument() on Linux
The previous implementation would fail to open directories with names
that contained spaces, as the space would be escaped and then quoted.

I don't think it's particularly meaningful to supply parameters when
opening a file in this way (especially not quoting the parameters too!)
so I've removed that functionality.
2021-09-23 10:28:47 +01:00
Tom Poole
bc75010116 Bump version number to 6.1.2 2021-09-20 12:15:47 +01:00
Tom Poole
5109e30c6f Bump version number to 6.1.1 2021-09-09 12:51:15 +01:00
Tom Poole
46fe3789fc Bump version number to 6.1.0 2021-08-23 09:55:56 +01:00
Tom Poole
a6fced64df Remove some outdated documentation 2021-08-18 09:51:34 +01:00
ed
055a4e93e9 POSIX: Set fileHandle to 0 after closing in MemoryMappedFile::openInternal() to prevent it from being closed again in the destructor 2021-08-11 12:02:49 +01:00
ed
39772b7474 Android: Remove old minimum SDK version checks 2021-08-11 11:50:04 +01:00
ed
8f03215a9e Accessibility: Add Android support 2021-07-28 11:44:29 +01:00
ed
d6a5156dd5 Objective-C++: Make getIvar() a free function so it can be used without a class instance 2021-07-28 11:44:28 +01:00
reuk
802f33b0e8
Thread: Avoid setting realtime priority on Thread instances by default on POSIX systems 2021-07-27 15:11:05 +01:00
reuk
1de762218a
Thread: Check for realtimeAudioPriority in more locations 2021-07-27 15:11:05 +01:00
ed
0f76c7d097 POSIX: Close file handle after mapping in MemoryMappedFile::openInternal() to avoid hitting max open file limit 2021-07-27 14:34:30 +01:00
ed
4b5c59dbae NullCheckedInvocation: Add missing tag and namespace comment to class declaration 2021-07-23 16:07:54 +01:00
reuk
3c68581567
Use jassertquiet where possible 2021-07-23 10:58:44 +01:00