Зарыг хаах

iOS дээр олон үйлдэл хэрхэн ажилладагийг мэдэхгүй олон хүмүүс байсаар байна. Гэхдээ эхлээд энэ нь жинхэнэ олон үйлдэл биш, харин систем болон хэрэглэгчдэд дарамт учруулахгүй маш ухаалаг шийдэл гэдгийг тэмдэглэх нь зүйтэй.

IOS үйлдлийн систем дээр далд ажиллаж байгаа програмууд үйлдлийн санах ойг дүүргэдэг бөгөөд энэ нь системийн удаашрал, батерейны цэнэггүй байдалд хүргэдэг гэсэн мухар сүсгийг байнга сонсдог тул хэрэглэгч үүнийг гараар унтраах хэрэгтэй. Олон үйлдэлт самбар нь үндсэндээ ажиллаж байгаа бүх процессуудын жагсаалтыг агуулдаггүй бөгөөд зөвхөн хамгийн сүүлд эхлүүлсэн програмуудыг агуулдаг. Тиймээс хэрэглэгч хэд хэдэн тохиолдлоос бусад тохиолдолд далд ажиллаж байгаа процессуудын талаар санаа зовох шаардлагагүй болно. Таныг Нүүр товчийг дарахад програм нь ихэвчлэн унтдаг эсвэл хаагддаг тул процессор эсвэл зайг ачаалахаа больж, шаардлагатай бол шаардлагатай санах ойг чөлөөлдөг.

Иймд олон арван процесс ажиллаж байгаа үед энэ нь бүрэн хэмжээний multitasking биш юм.Зөвхөн нэг програм үргэлж урд талд ажиллаж байгаа бөгөөд шаардлагатай бол түр зогсоож эсвэл бүрмөсөн унтраадаг. Цөөн хэдэн хоёрдогч процессууд цаана нь ажилладаг. Тийм ч учраас та iOS дээр програмын эвдрэл гарах нь ховор, жишээлбэл, Андройд нь хэрэглэгчийн анхаарал тавих ёстой ажиллаж байгаа програмуудад дарагдсан байдаг. Нэг талаас, энэ нь төхөөрөмжтэй ажиллахад тааламжгүй болгодог бөгөөд нөгөө талаас, жишээлбэл, удаан эхлүүлэх, програмуудын хооронд шилжихэд хүргэдэг.

Програмын ажиллах цагийн төрөл

Таны iOS төхөөрөмж дээрх програм эдгээр 5 төлөвийн аль нэгэнд байна:

  • Ажиллаж байна: програмыг эхлүүлж, урд талд ажиллаж байна
  • Суурь: энэ нь ажиллаж байгаа боловч цаана нь ажиллаж байна (бид бусад програмуудыг ашиглаж болно)
  • Түр түдгэлзүүлсэн: RAM ашиглаж байгаа ч ажиллахгүй байна
  • Идэвхгүй: програм ажиллаж байгаа боловч шууд бус командууд (жишээ нь, програм ажиллаж байгаа төхөөрөмжийг түгжих үед)
  • Ажиллахгүй байна: Аппликешн дуусгавар болсон эсвэл эхлээгүй байна

Аппликейшн нь саад болохгүйн тулд арын дэвсгэр рүү шилжих үед төөрөгдөл үүсдэг. Та Нүүр товчийг дарах юм уу дохио зангаагаар програмыг (iPad) хаах үед програм арын дэвсгэр рүү шилждэг. Ихэнх програмууд хэдхэн секундын дотор түр зогсдог (Тэдгээр нь iDevice-ийн RAM-д хадгалагддаг тул хурдан эхлүүлэх боломжтой, процессорыг тийм ч их ачаалдаггүй, улмаар батерейны цэнэгийг хэмнэдэг) Хэрэв програм санах ойг үргэлжлүүлэн ашиглах юм бол танд ийм зүйл байгаа гэж бодож магадгүй юм. гар аргаар устгахын тулд үүнийг суллах . Гэхдээ үүнийг хийх шаардлагагүй, учир нь iOS үүнийг хийх болно. Хэрэв танд их хэмжээний RAM ашигладаг тоглоом гэх мэт эрэлт хэрэгцээтэй аппликешныг ард түдгэлзүүлсэн бол шаардлагатай үед iOS үүнийг санах ойноос автоматаар устгах бөгөөд та програмын дүрс дээр дарж дахин эхлүүлэх боломжтой.

Эдгээр төлөвүүдийн аль нь ч олон талт талбарт тусгагдаагүй бөгөөд уг самбар нь програм зогссон, түр зогсоосон эсвэл ард ажиллаж байгаа эсэхээс үл хамааран саяхан эхлүүлсэн програмуудын жагсаалтыг харуулдаг. Одоо ажиллаж байгаа программ нь Multitasking самбар дээр харагдахгүй байгааг та анзаарсан байх

Суурь даалгавар

Ер нь та Home товчийг дарахад програм нь далд ажиллах бөгөөд хэрэв та үүнийг ашиглаагүй бол таван секундын дотор автоматаар зогсдог. Жишээлбэл, хэрэв та подкаст татаж байгаа бол систем үүнийг ажиллаж байгаа програм гэж үнэлж, дуусгахыг арван минутаар хойшлуулдаг. Хамгийн багадаа арван минутын дараа процесс санах ойноос чөлөөлөгдөнө. Товчхондоо, хэрэв та үүнийг дуусгахад 10 минутаас илүү хугацаа шаардагдахгүй бол Home товчийг дарж татан авалтаа тасалдуулах вий гэж санаа зовох хэрэггүй болно.

Ар талд нь тодорхойгүй гүйлт

Идэвхгүй болсон тохиолдолд систем таван секундын дотор програмыг зогсоож, татаж авсан тохиолдолд арван минутын турш дуусгавар болно. Гэсэн хэдий ч цаана нь ажиллах шаардлагатай цөөн тооны програмууд байдаг. iOS 5 дээр тодорхойгүй хугацаагаар далд ажиллах боломжтой програмуудын жишээг энд үзүүлэв.

  • Дуу тоглуулдаг, хэсэг хугацаанд тасалдсан байх ёстой програмууд (утасны дуудлагын үеэр хөгжим түр зогсоох гэх мэт),
  • Таны байршлыг хянах програмууд (навигацийн програм хангамж),
  • VoIP дуудлага хүлээн авах програмууд, жишээлбэл, хэрэв та Skype ашигладаг бол програм нь ард байсан ч дуудлага хүлээн авах боломжтой.
  • Автомат татаж авах (жишээ нь, Newsstand).

Даалгавраа гүйцэтгэхээ больсон тохиолдолд бүх програмыг хаах хэрэгтэй (жишээ нь, далд татан авалт гэх мэт). Гэсэн хэдий ч үндсэн Mail програм гэх мэт арын дэвсгэр дээр тасралтгүй ажилладаг үл хамаарах зүйлүүд байдаг. Хэрэв тэд далд ажиллаж байгаа бол санах ой, CPU-ийн ашиглалтыг эзэлдэг эсвэл батерейны ашиглалтыг бууруулдаг

Цаана нь тодорхойгүй хугацаагаар ажиллахыг зөвшөөрсөн программууд ажиллаж байхдаа хөгжим тоглуулахаас эхлээд шинэ Podcast ангийг татаж авах хүртэл юу ч хийх боломжтой.

Өмнө дурьдсанчлан, хэрэглэгч ард ажиллаж байгаа програмуудыг хаах шаардлагагүй. Үүний цорын ганц үл хамаарах зүйл бол арын дэвсгэр дээр ажиллаж байгаа програм гацах эсвэл нойрноосоо зөв сэрэхгүй байх явдал юм. Дараа нь хэрэглэгч програмуудыг олон үйлдэлт мөрөнд гараар хааж болох боловч энэ нь ховор тохиолддог.

Тиймээс ерөнхийдөө арын процессуудыг удирдах шаардлагагүй, учир нь систем өөрөө тэдгээрийг хариуцах болно. Тиймээс iOS бол маш шинэ, хурдан систем юм.

Хөгжүүлэгчийн үүднээс

Аппликейшн нь олон үйлдэлт үйлдлийн нэг хэсэг болгон нийт зургаан өөр төлөвт хариу үйлдэл үзүүлэх боломжтой:

1. applicationWillResignActive

Орчуулгад энэ төлөв нь ирээдүйд (хэдхэн миллисекундын асуудал) идэвхтэй программ (өөрөөр хэлбэл урд талын программ) огцрох болно гэсэн үг юм. Энэ нь жишээлбэл, програмыг ашиглаж байх үед дуудлага хүлээн авах үед тохиолддог, гэхдээ нэгэн зэрэг энэ арга нь програмыг арын горимд оруулахаас өмнө ийм төлөвийг үүсгэдэг тул та эдгээр өөрчлөлтийг анхаарч үзэх хэрэгтэй. Энэ арга нь бас тохиромжтой бөгөөд жишээлбэл, ирж буй дуудлага ирэх үед хийж буй бүх үйлдлээ түр зогсоож, дуудлагын төгсгөл хүртэл хүлээх болно.

2. applicationDidEnterBackground

Статус нь програм арын горимд шилжсэнийг харуулж байна. Хөгжүүлэгчид далд ажиллах шаардлагагүй бүх процессыг түр зогсоож, ашиглагдаагүй өгөгдөл болон бусад процессуудыг санах ойг цэвэрлэх, тухайлбал хугацаа нь дуусч байгаа цаг хэмжигч, санах ойноос ачаалагдсан зургуудыг шаардлагагүй санах ойноос цэвэрлэх, хаах зэрэгт энэ аргыг ашиглах хэрэгтэй. Аппликешн нь далд холболтыг дуусгах нь чухал биш бол серверүүдтэй холболтууд. Програмд ​​энэ аргыг ашиглах үед зарим хэсгийг нь далд ажиллуулах шаардлагагүй бол програмыг бүрэн түдгэлзүүлэхэд ашиглах ёстой.

3. applicationWillEnterForeground

Энэ төлөв нь эхний төлөвийн эсрэг бөгөөд програм идэвхтэй төлөвт шилжих болно. Энэ төлөв нь зүгээр л унтдаг програмыг ар талаас нь үргэлжлүүлж, дараагийн хэдэн миллисекундын дотор нүүрэн талд гарч ирнэ гэсэн үг юм. Програмыг далд ажиллаж байх үед идэвхгүй байсан аливаа процессыг үргэлжлүүлэхийн тулд хөгжүүлэгчид энэ аргыг ашиглах ёстой. Хэрэглэгч ачаалагдсан програмыг дахин харахаас өмнөхөн серверүүдтэй холбогдох холболтыг сэргээж, цаг хэмжигчийг дахин тохируулж, санах ойд зураг, өгөгдлийг ачаалж, бусад шаардлагатай процессуудыг үргэлжлүүлж болно.

4. applicationDidBecomeActive

Энэ төлөв нь програмыг эхний ээлжинд сэргээсний дараа дөнгөж идэвхжиж байгааг харуулж байна. Энэ нь хэрэглэгчийн интерфэйс дээр нэмэлт тохируулга хийх эсвэл UI-г анхны байдалд нь оруулах гэх мэтийг ашиглаж болох арга юм. Энэ нь үнэндээ хэрэглэгч програмыг дэлгэцэн дээр харж байх үед тохиолддог тул үүнийг хийх шаардлагатай. Энэ болон өмнөх аргад юу тохиолдохыг болгоомжтой тодорхойлох. Тэдгээрийг хэдэн миллисекундын зөрүүгээр ар араас нь дууддаг.

5. applicationWillTerminate

Энэ төлөв нь програмаас гарахаас хэдхэн миллисекунд, өөрөөр хэлбэл програм үнэхээр дуусахаас өмнө тохиолддог. Олон үйлдэл хийх эсвэл төхөөрөмжийг унтраах үед гараар хийх боломжтой. Энэ аргыг боловсруулсан өгөгдлийг хадгалах, бүх үйл ажиллагааг дуусгах, цаашид шаардлагагүй өгөгдлийг устгахад ашиглах ёстой.

6. applicationDidReceiveMemoryWarning

Энэ бол хамгийн сүүлд яригдаж байгаа муж юм. Энэ нь шаардлагатай бол системийн нөөцийг шаардлагагүй ашигласан тохиолдолд програмыг iOS санах ойноос устгах үүрэгтэй. IOS нь арын аппликейшн дээр яг юу хийдгийг би мэдэхгүй, гэхдээ хэрэв түүнд нөөцийг бусад процессуудад гаргахын тулд програм хэрэгтэй бол түүнд байгаа бүх нөөцийг гаргахыг санах ойн анхааруулгатай болгоно. Тиймээс энэ аргыг программд дууддаг. Хөгжүүлэгчид үүнийг хэрэгжүүлэх ёстой бөгөөд ингэснээр програм нь хуваарилсан санах ойгоос татгалзаж, хийгдэж буй бүх зүйлийг хадгалах, шаардлагагүй өгөгдлийг санах ойноос цэвэрлэж, санах ойг хангалттай хэмжээгээр чөлөөлөх болно. Олон хөгжүүлэгчид, тэр ч байтугай анхлан суралцагчид ч гэсэн ийм зүйлийн талаар боддоггүй, ойлгодоггүй нь үнэн бөгөөд дараа нь тэдний програм нь батерейны ашиглалтыг заналхийлж, / эсвэл цаана нь ч гэсэн системийн нөөцийг шаардлагагүйгээр зарцуулдаг.

Шийдвэр

Эдгээр зургаан муж болон тэдгээртэй холбоотой аргууд нь iOS дээрх бүх "олон даалгавар"-ын суурь юм. Хөгжүүлэгчид хэрэглэгчдийнхээ төхөөрөмжид ямар програм гарч ирэх, тэдгээрийг багасгасан эсвэл системээс анхааруулга авах гэх мэт асуудалд хариуцлага хүлээх шаардлагатай байгааг үл тоомсорлодоггүй бол энэ нь маш сайн систем юм.

Эх сурвалж: Macworld.com дээр

Зохиогчид: Якуб Пожарек, Мартин Дубек (ArnieX)

 
Танд бас шийдэх асуудал байна уу? Танд зөвлөгөө хэрэгтэй байна уу эсвэл тохирох програмыг хайж олох уу? Хэсэг дэх маягтаар дамжуулан бидэнтэй холбоо барина уу Зөвлөгөө өгөх, дараагийн удаа бид таны асуултанд хариулах болно.

.