Networking is central to how most apps add value to their users which is why significant effort has been put into creating an easy to use networking layer by both Apple and the open-source community…
#Concurrency
7 posts with this tag
We are often told that no matter where we end up, we shouldn't forget where we came from. Usually, this applies to people, but it can also apply to code. Specifically, code that runs on a different queue from the queue it was scheduled on…
In "Coalescing NSOperations" [https://williamboles.com/coalescing-nsoperations/] I wrote about coalescing NSOperations however, during the writing of that article, I began to explore other ways that I could coalesce operations. One solution I discovered has all the benefits of the previous…
> This post is now outdated, please instead check out my newer post on Coalescing Operations [https://williamboles.com/removing-bolierplate-when-coalescing-nsoperations/] for my latest solution to coalescing operations - I'm leaving this here in case anyone needs it. In "Networking wi…
> This post is based on an Objective-C example. If you are more interested in seeing how to combine networking and operations based on a Swift example, head over to the more recent "Building a networking layer with operations" [https://williamboles.com/building-a-networking-layer-with-o…
Recently I was writing an application that analysed audio input and updated an audio visualiser on screen. Running everything in the main thread just ground UI responsiveness down so I decided to spin off the audio capture into a separate thread. My first thoughts where to use NSOperationInvocation…
In iOS there are two ways to support multi-threading in your app: subclass NSOperation [https://developer.apple.com/documentation/foundation/nsoperation?language=objc] or use the more specialised NSInvocationOperation [https://developer.apple.com/documentation/foundation/nsinvocationoperation?lang…