问:
ipad分屏是将两个应用同时放在前台吗,操作其中一个分屏应用时,另一个分屏应用是否会被认定为后台程序?
答:
iPad的分屏功能可以将屏幕分成两 halves,每个half运行一个应用程序。但是,这两个应用程序不完全等同于前台和后台程序。
当一个应用程序在前台运行时,它可以接收到系统事件和用户输入,并且它的UI会一直更新。而后台程序通常被暂停,不接收输入和事件,它的UI也不会更新。
在iPad的分屏模式下,两个应用程序都可以接收到系统事件和用户输入,它们的UI也都会实时更新。所以从这个意义上说,这两个应用程序都属于前台程序。
但是,iPad的系统并不是真正地将处理器时间片平均分配给这两个应用。在任何给定时间点,只有一个应用程序在占用大部分的CPU和GPU资源在运行。系统会很快在这两个应用之间切换,给用户的感觉就像两个应用程序在同时流畅运行。但实际上在任何短瞬时间内,只有一个应用程序在主动运行。
所以综上,在iPad分屏模式下:
1) 两个应用程序都可以接收输入和更新UI,这点像前台程序。
2) 但在任何时间点只有一个应用程序在占用系统资源主要运行,另一个应用程序处于假的“前台”状态。从这个意义上说,后台程序并不是完全暂停。
3) 系统通过很快在两个应用程序之间切换,使得用户感觉到两个应用程序同时流畅运行。但事实上在短时间内CPU/GPU资源不能真正并行分配给两个应用程序。
所以,总的来说,iPad分屏下的两个应用程序不完全等同于前台程序和后台程序。但也不纯粹是两个前台程序同时并行运行。它是在这两种模式之间达到的一个折中的实现方式。