From beb9a646efedc1ab14c1904eb87abb01ea0b0bdc Mon Sep 17 00:00:00 2001 From: Evan Maloney Date: Wed, 7 Sep 2016 20:02:48 -0400 Subject: [PATCH] Release 0.4.1 (build 6) --- BuildControl/Info-Framework.plist | 2 +- .../project.pbxproj | 4 ++-- Documentation/API/Functions.html | 2 +- Documentation/API/Structs.html | 2 +- .../API/Structs/CriticalSection.html | 4 ++-- .../API/Structs/ReadWriteCoordinator.html | 8 ++++---- .../API/Structs/ThreadLocalValue.html | 2 +- Documentation/API/css/jazzy.css | 3 ++- .../Contents/Info.plist | 2 +- .../Resources/Documents/Functions.html | 2 +- .../Contents/Resources/Documents/Structs.html | 2 +- .../Documents/Structs/CriticalSection.html | 4 ++-- .../Structs/ReadWriteCoordinator.html | 8 ++++---- .../Documents/Structs/ThreadLocalValue.html | 2 +- .../Resources/Documents/css/jazzy.css | 3 ++- .../Contents/Resources/Documents/index.html | 18 +++++++++--------- .../Resources/Documents/undocumented.json | 1 + .../Resources/Documents/undocumented.txt | 0 .../API/docsets/CleanroomConcurrency.tgz | Bin 51614 -> 52748 bytes Documentation/API/index.html | 18 +++++++++--------- Documentation/API/undocumented.json | 1 + Documentation/API/undocumented.txt | 0 22 files changed, 46 insertions(+), 42 deletions(-) create mode 100644 Documentation/API/docsets/CleanroomConcurrency.docset/Contents/Resources/Documents/undocumented.json delete mode 100644 Documentation/API/docsets/CleanroomConcurrency.docset/Contents/Resources/Documents/undocumented.txt create mode 100644 Documentation/API/undocumented.json delete mode 100644 Documentation/API/undocumented.txt diff --git a/BuildControl/Info-Framework.plist b/BuildControl/Info-Framework.plist index c941094..2bb1ea9 100644 --- a/BuildControl/Info-Framework.plist +++ b/BuildControl/Info-Framework.plist @@ -15,7 +15,7 @@ CFBundlePackageType FMWK CFBundleShortVersionString - 0.4.0 + 0.4.1 CFBundleSignature ???? CFBundleVersion diff --git a/CleanroomConcurrency.xcodeproj/project.pbxproj b/CleanroomConcurrency.xcodeproj/project.pbxproj index 4bdb800..180eb80 100644 --- a/CleanroomConcurrency.xcodeproj/project.pbxproj +++ b/CleanroomConcurrency.xcodeproj/project.pbxproj @@ -1222,7 +1222,7 @@ isa = XCBuildConfiguration; baseConfigurationReference = 3B38DBD81BA76428000986DF /* Project.xcconfig */; buildSettings = { - CURRENT_PROJECT_VERSION = 5; + CURRENT_PROJECT_VERSION = 6; }; name = Debug; }; @@ -1230,7 +1230,7 @@ isa = XCBuildConfiguration; baseConfigurationReference = 3B38DBD81BA76428000986DF /* Project.xcconfig */; buildSettings = { - CURRENT_PROJECT_VERSION = 5; + CURRENT_PROJECT_VERSION = 6; }; name = Release; }; diff --git a/Documentation/API/Functions.html b/Documentation/API/Functions.html index 0c17596..1af92a7 100644 --- a/Documentation/API/Functions.html +++ b/Documentation/API/Functions.html @@ -239,7 +239,7 @@

Declaration

diff --git a/Documentation/API/Structs.html b/Documentation/API/Structs.html index 96f3fb9..161d4ce 100644 --- a/Documentation/API/Structs.html +++ b/Documentation/API/Structs.html @@ -195,7 +195,7 @@

Declaration

diff --git a/Documentation/API/Structs/CriticalSection.html b/Documentation/API/Structs/CriticalSection.html index ea0b523..d539c65 100644 --- a/Documentation/API/Structs/CriticalSection.html +++ b/Documentation/API/Structs/CriticalSection.html @@ -107,7 +107,7 @@

CriticalSection

Declaration

Swift

-
public init() {}
+
public init()
@@ -238,7 +238,7 @@

Return Value

diff --git a/Documentation/API/Structs/ReadWriteCoordinator.html b/Documentation/API/Structs/ReadWriteCoordinator.html index b52b102..0e4b5a4 100644 --- a/Documentation/API/Structs/ReadWriteCoordinator.html +++ b/Documentation/API/Structs/ReadWriteCoordinator.html @@ -106,7 +106,7 @@

ReadWriteCoordinator

-

Initializes a new ReadWriteCoordinator instance.

+

Initializes a new ReadWriteCoordinator instance.

@@ -133,10 +133,10 @@

Declaration

-

Initializes a new ReadWriteCoordinator instance.

+

Initializes a new ReadWriteCoordinator instance.

:param: queueName The name for the Grand Central Dispatch queue that - will be created for the new ReadWriteCoordinator.

+ will be created for the new ReadWriteCoordinator.

@@ -248,7 +248,7 @@

Declaration

diff --git a/Documentation/API/Structs/ThreadLocalValue.html b/Documentation/API/Structs/ThreadLocalValue.html index b5df317..06a7519 100644 --- a/Documentation/API/Structs/ThreadLocalValue.html +++ b/Documentation/API/Structs/ThreadLocalValue.html @@ -351,7 +351,7 @@

Declaration

diff --git a/Documentation/API/css/jazzy.css b/Documentation/API/css/jazzy.css index 2a7da3a..d6d65b7 100644 --- a/Documentation/API/css/jazzy.css +++ b/Documentation/API/css/jazzy.css @@ -139,7 +139,8 @@ header { .nav-group-task { font-size: 0.9em; - list-style-type: none; } + list-style-type: none; + white-space: nowrap; } .nav-group-task a { color: #888; } diff --git a/Documentation/API/docsets/CleanroomConcurrency.docset/Contents/Info.plist b/Documentation/API/docsets/CleanroomConcurrency.docset/Contents/Info.plist index 10c9ff7..63e4058 100644 --- a/Documentation/API/docsets/CleanroomConcurrency.docset/Contents/Info.plist +++ b/Documentation/API/docsets/CleanroomConcurrency.docset/Contents/Info.plist @@ -7,7 +7,7 @@ CFBundleName CleanroomConcurrency DocSetPlatformFamily - jazzy + cleanroomconcurrency isDashDocset dashIndexFilePath diff --git a/Documentation/API/docsets/CleanroomConcurrency.docset/Contents/Resources/Documents/Functions.html b/Documentation/API/docsets/CleanroomConcurrency.docset/Contents/Resources/Documents/Functions.html index 0c17596..1af92a7 100644 --- a/Documentation/API/docsets/CleanroomConcurrency.docset/Contents/Resources/Documents/Functions.html +++ b/Documentation/API/docsets/CleanroomConcurrency.docset/Contents/Resources/Documents/Functions.html @@ -239,7 +239,7 @@

Declaration

diff --git a/Documentation/API/docsets/CleanroomConcurrency.docset/Contents/Resources/Documents/Structs.html b/Documentation/API/docsets/CleanroomConcurrency.docset/Contents/Resources/Documents/Structs.html index 96f3fb9..161d4ce 100644 --- a/Documentation/API/docsets/CleanroomConcurrency.docset/Contents/Resources/Documents/Structs.html +++ b/Documentation/API/docsets/CleanroomConcurrency.docset/Contents/Resources/Documents/Structs.html @@ -195,7 +195,7 @@

Declaration

diff --git a/Documentation/API/docsets/CleanroomConcurrency.docset/Contents/Resources/Documents/Structs/CriticalSection.html b/Documentation/API/docsets/CleanroomConcurrency.docset/Contents/Resources/Documents/Structs/CriticalSection.html index ea0b523..d539c65 100644 --- a/Documentation/API/docsets/CleanroomConcurrency.docset/Contents/Resources/Documents/Structs/CriticalSection.html +++ b/Documentation/API/docsets/CleanroomConcurrency.docset/Contents/Resources/Documents/Structs/CriticalSection.html @@ -107,7 +107,7 @@

CriticalSection

Declaration

Swift

-
public init() {}
+
public init()
@@ -238,7 +238,7 @@

Return Value

diff --git a/Documentation/API/docsets/CleanroomConcurrency.docset/Contents/Resources/Documents/Structs/ReadWriteCoordinator.html b/Documentation/API/docsets/CleanroomConcurrency.docset/Contents/Resources/Documents/Structs/ReadWriteCoordinator.html index b52b102..0e4b5a4 100644 --- a/Documentation/API/docsets/CleanroomConcurrency.docset/Contents/Resources/Documents/Structs/ReadWriteCoordinator.html +++ b/Documentation/API/docsets/CleanroomConcurrency.docset/Contents/Resources/Documents/Structs/ReadWriteCoordinator.html @@ -106,7 +106,7 @@

ReadWriteCoordinator

-

Initializes a new ReadWriteCoordinator instance.

+

Initializes a new ReadWriteCoordinator instance.

@@ -133,10 +133,10 @@

Declaration

-

Initializes a new ReadWriteCoordinator instance.

+

Initializes a new ReadWriteCoordinator instance.

:param: queueName The name for the Grand Central Dispatch queue that - will be created for the new ReadWriteCoordinator.

+ will be created for the new ReadWriteCoordinator.

@@ -248,7 +248,7 @@

Declaration

diff --git a/Documentation/API/docsets/CleanroomConcurrency.docset/Contents/Resources/Documents/Structs/ThreadLocalValue.html b/Documentation/API/docsets/CleanroomConcurrency.docset/Contents/Resources/Documents/Structs/ThreadLocalValue.html index b5df317..06a7519 100644 --- a/Documentation/API/docsets/CleanroomConcurrency.docset/Contents/Resources/Documents/Structs/ThreadLocalValue.html +++ b/Documentation/API/docsets/CleanroomConcurrency.docset/Contents/Resources/Documents/Structs/ThreadLocalValue.html @@ -351,7 +351,7 @@

Declaration

diff --git a/Documentation/API/docsets/CleanroomConcurrency.docset/Contents/Resources/Documents/css/jazzy.css b/Documentation/API/docsets/CleanroomConcurrency.docset/Contents/Resources/Documents/css/jazzy.css index 2a7da3a..d6d65b7 100644 --- a/Documentation/API/docsets/CleanroomConcurrency.docset/Contents/Resources/Documents/css/jazzy.css +++ b/Documentation/API/docsets/CleanroomConcurrency.docset/Contents/Resources/Documents/css/jazzy.css @@ -139,7 +139,8 @@ header { .nav-group-task { font-size: 0.9em; - list-style-type: none; } + list-style-type: none; + white-space: nowrap; } .nav-group-task a { color: #888; } diff --git a/Documentation/API/docsets/CleanroomConcurrency.docset/Contents/Resources/Documents/index.html b/Documentation/API/docsets/CleanroomConcurrency.docset/Contents/Resources/Documents/index.html index 8c34667..b1f9fb0 100644 --- a/Documentation/API/docsets/CleanroomConcurrency.docset/Contents/Resources/Documents/index.html +++ b/Documentation/API/docsets/CleanroomConcurrency.docset/Contents/Resources/Documents/index.html @@ -67,7 +67,7 @@
-

Using CleanroomConcurrency

+

Using CleanroomConcurrency

CleanroomConcurrency provides:

@@ -87,13 +87,13 @@

The async function provides a simple notation for specifying that a block of code should be executed asynchronously.

async takes as a parameter a no-argument function returning Void, and is typically invoked with a closure:

-
async {
+
async {
     println("This will execute asynchronously")
 }
 

The operation specified by the closure—the println() call above—will be executed asynchronously.

-

async with delay

+

async with delay

A variation on the async function takes a delay parameter, an NSTimeInterval value specifying the minimum number of seconds to wait before asynchronously executing the closure:

async(delay: 0.35) {
@@ -115,7 +115,7 @@
 

The notation above ensures that the rootViewController is changed only on the main thread.

-

mainThread with delay

+

mainThread with delay

As with the async function, a variation of the mainThread function takes a delay parameter:

mainThread(delay: 0.35) {
@@ -139,7 +139,7 @@
 
 
 

Barrier operations are submitted for eventual execution using the notation:

-
asyncBarrier {
+
asyncBarrier {
     println("When this executes, no other operations will be executing")
 }
 
@@ -154,7 +154,7 @@

CriticalSections are a form of a mutex (or mutual exclusion) lock: when one thread is executing code within a given critical section, it is guaranteed that no other thread will be executing within the same instance.

In this way, CriticalSections are similar to @synchronized blocks in Objective-C.

-

Using a CriticalSection

+

Using a CriticalSection

With a CriticalSection, any code inside the execute closure (shown below as the `// code to execute` comment) is executed only after exclusive access to the critical section has been acquired by the calling thread.

let cs = CriticalSection()
@@ -185,7 +185,7 @@
 

If exclusive access to the critical section cs can’t be acquired within 1.0 seconds, nothing will be executed and executeWithTimeout() will return false.

Note: It is best to design your implementation to avoid the potential for a deadlock. However, sometimes this is not possible, which is why the executeWithTimeout() function is provided.

-

Implementation Details

+

Implementation Details

The CriticalSection implementation uses an NSRecursiveLock internally, which enables CriticalSections to be re-entrant. This means that a thread can’t deadlock on a CriticalSection it already holds.

@@ -285,7 +285,7 @@

Regardless of whether a ThreadLocalValue uses a namespace, the key used to access the threadDictionary is always available via the fullKey property.

-

Thread-local caching

+

Thread-local caching

ThreadLocalValue instances can also be used to treat thread-local storage as a lockless cache.

@@ -317,7 +317,7 @@
diff --git a/Documentation/API/docsets/CleanroomConcurrency.docset/Contents/Resources/Documents/undocumented.json b/Documentation/API/docsets/CleanroomConcurrency.docset/Contents/Resources/Documents/undocumented.json new file mode 100644 index 0000000..5406405 --- /dev/null +++ b/Documentation/API/docsets/CleanroomConcurrency.docset/Contents/Resources/Documents/undocumented.json @@ -0,0 +1 @@ +{"warnings":[],"source_directory":"/Users/emaloney/Documents/Code/CleanroomProject/CleanroomConcurrency"} \ No newline at end of file diff --git a/Documentation/API/docsets/CleanroomConcurrency.docset/Contents/Resources/Documents/undocumented.txt b/Documentation/API/docsets/CleanroomConcurrency.docset/Contents/Resources/Documents/undocumented.txt deleted file mode 100644 index e69de29..0000000 diff --git a/Documentation/API/docsets/CleanroomConcurrency.tgz b/Documentation/API/docsets/CleanroomConcurrency.tgz index b2016235fda7de81a53269935489930f3ff47632..c0dbcbe463457e198c1f3f9c2e86681e97aa8c2a 100644 GIT binary patch delta 51174 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

d@F`(bp}U@$xnd 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 Zck_4ick_4i_f_-ze*xG=5cvQQ1OSVA?@|B& delta 50027 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 J-BJLU0|1)N#UTIy diff --git a/Documentation/API/index.html b/Documentation/API/index.html index 8c34667..b1f9fb0 100644 --- a/Documentation/API/index.html +++ b/Documentation/API/index.html @@ -67,7 +67,7 @@
-

Using CleanroomConcurrency

+

Using CleanroomConcurrency

CleanroomConcurrency provides:

@@ -87,13 +87,13 @@

The async function provides a simple notation for specifying that a block of code should be executed asynchronously.

async takes as a parameter a no-argument function returning Void, and is typically invoked with a closure:

-
async {
+
async {
     println("This will execute asynchronously")
 }
 

The operation specified by the closure—the println() call above—will be executed asynchronously.

-

async with delay

+

async with delay

A variation on the async function takes a delay parameter, an NSTimeInterval value specifying the minimum number of seconds to wait before asynchronously executing the closure:

async(delay: 0.35) {
@@ -115,7 +115,7 @@
 

The notation above ensures that the rootViewController is changed only on the main thread.

-

mainThread with delay

+

mainThread with delay

As with the async function, a variation of the mainThread function takes a delay parameter:

mainThread(delay: 0.35) {
@@ -139,7 +139,7 @@
 
 
 

Barrier operations are submitted for eventual execution using the notation:

-
asyncBarrier {
+
asyncBarrier {
     println("When this executes, no other operations will be executing")
 }
 
@@ -154,7 +154,7 @@

CriticalSections are a form of a mutex (or mutual exclusion) lock: when one thread is executing code within a given critical section, it is guaranteed that no other thread will be executing within the same instance.

In this way, CriticalSections are similar to @synchronized blocks in Objective-C.

-

Using a CriticalSection

+

Using a CriticalSection

With a CriticalSection, any code inside the execute closure (shown below as the `// code to execute` comment) is executed only after exclusive access to the critical section has been acquired by the calling thread.

let cs = CriticalSection()
@@ -185,7 +185,7 @@
 

If exclusive access to the critical section cs can’t be acquired within 1.0 seconds, nothing will be executed and executeWithTimeout() will return false.

Note: It is best to design your implementation to avoid the potential for a deadlock. However, sometimes this is not possible, which is why the executeWithTimeout() function is provided.

-

Implementation Details

+

Implementation Details

The CriticalSection implementation uses an NSRecursiveLock internally, which enables CriticalSections to be re-entrant. This means that a thread can’t deadlock on a CriticalSection it already holds.

@@ -285,7 +285,7 @@

Regardless of whether a ThreadLocalValue uses a namespace, the key used to access the threadDictionary is always available via the fullKey property.

-

Thread-local caching

+

Thread-local caching

ThreadLocalValue instances can also be used to treat thread-local storage as a lockless cache.

@@ -317,7 +317,7 @@
diff --git a/Documentation/API/undocumented.json b/Documentation/API/undocumented.json new file mode 100644 index 0000000..5406405 --- /dev/null +++ b/Documentation/API/undocumented.json @@ -0,0 +1 @@ +{"warnings":[],"source_directory":"/Users/emaloney/Documents/Code/CleanroomProject/CleanroomConcurrency"} \ No newline at end of file diff --git a/Documentation/API/undocumented.txt b/Documentation/API/undocumented.txt deleted file mode 100644 index e69de29..0000000