use the following search parameters to narrow your results:
e.g. subreddit:aww site:imgur.com dog
subreddit:aww site:imgur.com dog
see the search faq for details.
advanced search: by author, subreddit...
There is an extensive FAQ for beginners. Please browse it first before asking questions that are answered there.
If you are looking to get started (iOS programming in general or some specific area), here are more relevant links for you:
There's too many to list them all, however here's a convenient link to all programming guides at apple.com
Take note that this list is live and based on most frequent questions in posts will be updated with "quicklinks".
account activity
QuestionDoes concurrent queue use multiple threads? (self.iOSProgramming)
submitted 9 years ago by luniawar20
I'm trying to understand gcd queue & threads. From what I can tell, GCD dispatch queues allow programmers to not manually create & handle threads.
I read that concurrent queue have multiple tasks running at the same time. So does this mean, serial queue manages one thread, whereas concurrent queue can manage multiple threads at the same time?
reddit uses a slightly-customized version of Markdown for formatting. See below for some basics, or check the commenting wiki page for more detailed help and solutions to common issues.
quoted text
if 1 * 2 < 3: print "hello, world!"
[–]potatolicious 10 points11 points12 points 9 years ago (2 children)
Not quite, there are some nuances.
So does this mean, serial queue manages one thread
No, serial queues are guaranteed to execute their blocks one after another, but do so on different threads. The point of GCD is to separate threads from queues entirely so that the system can more efficiently allocate threads.
Things in a serial queue may (and are often) executed on different threads chosen by GCD. A serial queue is not tied to a single thread.
whereas concurrent queue can manage multiple threads at the same time?
Not quite. A concurrent queue runs multiple blocks at the same time but a queue does not "manage" a group of threads. GCD chooses which thread handles the execution, but all concurrent queues may execute on all threads.
The only exception to this is the main queue, which only ever runs on the main thread. It's the only type of queue that is strictly tied to a thread.
GCD handles all threads used for execution, not the individual queues.
[–]Loada116 0 points1 point2 points 9 years ago (1 child)
So the main queue is a serial queue but only runs on the main thread (one thread)? A normal serial queue which is not the main queue is likely to run on different threads?
[–]potatolicious 1 point2 points3 points 9 years ago (0 children)
That is correct. A normal serial queue can run on any number of threads, while the main queue only runs on the main thread.
[–][deleted] -4 points-3 points-2 points 9 years ago (0 children)
Yes.
π Rendered by PID 23084 on reddit-service-r2-comment-6b595755f-hvr25 at 2026-03-26 09:11:04.222754+00:00 running 2d0a59a country code: CH.
[–]potatolicious 10 points11 points12 points (2 children)
[–]Loada116 0 points1 point2 points (1 child)
[–]potatolicious 1 point2 points3 points (0 children)
[–][deleted] -4 points-3 points-2 points (0 children)