Long read, but worth it: [WayBack] Threads are not the answer | CompuTruthing
We argue that the thread-oriented approach to concurrency is a bad approach. It has severe modifiability problems, but also performance problems. We should not think in terms of low level primitives.
It has great analogies between threading and cars on roads:
Software world Automotive world thread road work unit set of cars that pass over a road in a period of time work unit dependencies cars need to go from one road to another total execution time total time for all cars to reach the destination lock/semaphore traffic lights / roundabout too few work unit dependencies (highway) road network badly connected (sometimes this means long way to nearby locations) too many work unit dependencies too many intersections or access points (too much time spent in these) too many small threads (descheduled often) small roads threads that are not descheduled from cores highways
Via
[WayBack] Kevlin Henney – Google+
Related videos under the fold (more at DevTube – Videos by @kevlinhenney)
–jeroen







