On Apr 23, 2012, at 9:51 AM, Wally McClure wrote: > A quick question on threading in iOS. There is an iOS NSThread. How does it > differ from an MT managed thread/threadpool/task?
Mono threads are built atop POSIX threads/Pthreads. I have no idea what NSThread is built atop, though Apple documentation [0] suggests that it's built atop Mach threads, as are POSIX threads, so kernel-side they shouldn't be any different. > Is an NSThread a kernel level thread where as an MT thread/threadpool/task is > an application/framework level thread that is at a higher level than an > NSThread? No, NSThread is a user-level construct, just as Pthreads are. They both work at similar layers of abstraction, if I read [0] correctly. > Does the threading model of MT (and MfA I would assume) follow an N:1 or M:N > threading model I have no idea; that's up to libpthread.dylib, and could presumably vary at any time w/o breaking compatibility. - Jon [0] https://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/Multithreading/Multithreading.pdf Threading Packages (p13) > Although the underlying implementation mechanism for threads is Mach threads, > you rarely (if ever) work with threads at the Mach level. Instead, you > usually use the more convenient POSIX API or one of its derivatives. _______________________________________________ MonoTouch mailing list [email protected] http://lists.ximian.com/mailman/listinfo/monotouch
