|
|
|
|
|
by jcizzle
5304 days ago
|
|
Pretty close on the iOS stuff: 1. All* rendering takes place on the main thread in iOS. 2. The main thread doesn't always have the highest priority. In fact, its priority level changes throughout an application. 3. There is more than just one reason iOS rendering is so fast. Here are two important ones: a. Animation is actually the basis of the entire rendering system. On desktop Cocoa, the drawing system was a little dated. The mistakes learned from this system and the desire to have fast animation led to the Core Animation framework and the idea of "layers". The ability to quickly composite layers (without moving any data from between the CPU and GPU) and only redraw when necessary is huge. b. The batching together of drawing updates at the end of an event instead of on an as needed basis allows for huge performance gains. * It is possible to draw in a background thread, but is reserved for particular situations (maps, web content, etc.). Table views do not fall into this category. |
|